       RE : How to extract a solution from Mathematica's answer to "Solve"

• To: mathgroup at smc.vnet.net
• Subject: [mg49381] RE : [mg49363] How to extract a solution from Mathematica's answer to "Solve"
• From: "Florian Jaccard" <florian.jaccard at eiaj.ch>
• Date: Sat, 17 Jul 2004 06:38:45 -0400 (EDT)
• Sender: owner-wri-mathgroup at wolfram.com

```You should write MySolution = x/.%[]

But you can do it better : You can automatically obtain the assignments
x1=first solution, x2=second solution, etc. , without knowing in advance how
many solutions you have :

In:=
solu = x /. Solve[(x-1)(x^2-5x+6) == 0, x];

In:=
Do[Evaluate[ToExpression[StringJoin["x", ToString[i]]]] =
Evaluate[solu[[i]]], {i, Length[solu]}]

In:=
x1

Out=
1

In:=
x2

Out=
2

In:=
x3

Out=
3

regards

F.Jaccard

-----Message d'origine-----
De : Rainer [mailto:wilhelm.rainer at gmx.net]
Envoyé : vendredi, 16. juillet 2004 12:07
À : mathgroup at smc.vnet.net
Objet : [mg49363] How to extract a solution from Mathematica's answer to
"Solve"

I have a question concerning the Solve command. Assume I have solved
an equation using Solve. Mathematica returns the solutions in the
following form (example for 2 solutions):

{{x->-2}, {x->2}}

Now, assume I wish always to pick the first of these two solutions and
store it in a variable (to be able to continue working with it in the
Notebook). Is there a command to "extract" the second solution and to
store it in a variable. Since the response is in a form of a matrix
{{...},{...}}, I have tried things like MySolution = %[], but it
always fails.