使用Solve的输出

Mr *_*pha 3 wolfram-mathematica

我有一个数学问题,我解决了这样的问题:

In[1]:= Solve[2x(a-x)==0, x]
Out[1]= {{x->0}, {x->a}}

In[2]:= Integrate[2x(a-x), {x,0,a}]
Out[2]= (a^3)/3

In[3]:= Solve[(a^3)/3==a, a]
Out[3]= {{a->0}, {a->-Sqrt[3]}, {a->Sqrt[3]}}
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果我可以重写它来一步计算它,而不是必须手动输入前一行的结果.我可以使用第二步中的Integrate命令轻松替换第三步中使用的积分.但我无法弄清楚我将如何使用步骤1中的结果作为积分中的积分限制.

Hei*_*ike 6

你可以通过做类似的事情来结合第1步和第2步

Integrate[2 x (a - x), {x, ##}] & @@ (x /. Solve[2 x (a - x) == 0, x]);
Run Code Online (Sandbox Code Playgroud)

  • `积分[2 x(a - x),{x,##}]和@@(x /.求解[2 x(a - x)== 0,x])//求解[#== a, a]&`将所有三个步骤放在一起. (2认同)