2009-10-23 9 views
8

मान लीजिए मैं निम्नलिखित परिणाम:मेथेमेटिका: "एक्स ->" से छुटकारा FindInstance में जो परिणाम

a=FindInstance[2*b^2 + b^3 == b^4 + t && t < 10 && t > -1, {b, t}, 
    Integers, 20] 
{{b -> -1, t -> 0}, {b -> 0, t -> 0}, {b -> 1, t -> 2}, {b -> 2, 
    t -> 0}} 

मैं कैसे की "बी>" छुटकारा पाने और सिर्फ ख की सरणी प्राप्त कर सकते हैं जवाब? मैं के साथ आधे रास्ते वहाँ प्राप्त कर सकते हैं:

a[[All,1]] 
{b -> -1, b -> 0, b -> 1, b -> 2} 

लेकिन मैं करने के लिए बस कैसे प्राप्त कर सकते हैं:

{-1, 0, 1, 2} 

धन्यवाद

उत्तर

12

मैं dreeves 'जवाब में कुछ कमी रह सकती है, लेकिन जिस तरह से मैं हमेशा से यह मानना आप यह लिखकर बस लिखते थे:

b /. a 

"मूल उदाहरण" अनुभाग में इसका एक उदाहरण है the documentation for the Solve function, जो एक ही आउटपुट शैली का उपयोग करता है।

+0

वाह, यह शर्मनाक है। मैंने अभी माना है कि आपको 'बी' के प्रत्येक मूल्य को प्राप्त करने के लिए नियमों की सूची पर स्पष्ट रूप से मानचित्र बनाना होगा। लेकिन, आप सही हैं, बस 'बी /। ए 'सूची में प्रत्येक नियम के लिए बी की सूची देना जानता है। आप इस दौर को जीतेंगे, रॉबर्टसन! – dreeves

3

हालांकि विल का उत्तर ऐसा करने का वैधानिक तरीका है, मैं केवल मस्ती के लिए कुछ विकल्प प्रदान करूंगा।

In[37]:= ans={{b -> -1, t -> 0},{b -> 0, t -> 0},{b -> 1, t -> 2},{b -> 2, t -> 0}}; 

In[38]:= Cases[ans, (b -> a_) :> a, Infinity] 

Out[38]= {-1, 0, 1, 2} 

In[39]:= ans[[All, 1]][[All, 2]] 

Out[39]= {-1, 0, 1, 2} 

In[40]:= ans /. {b -> a_, _} :> a 

Out[40]= {-1, 0, 1, 2} 

In[41]:= (ans /. Rule -> List)[[All, 1, 2]] 

Out[41]= {-1, 0, 1, 2} 
संबंधित मुद्दे