matlab解表达式∑n!的值
(一)前言
本文简单介绍如何使用matlab定义函数表达式matlab中的eval()函数与subs()函数进行表达式(含参/不含参)的求值。
(二)不含参表达式
对于一个表达式的求值运算,我们使用eval函数求解,如eval('1+2*3'),可以算得式子的具体结果。
(三)含参表达式的符号运算
符号运算,即不代入具体的值进行符号间的运算,我们也可以用eval()求解,如eval('a+a+b*c+a'),这样可能可以对一个表达式进行一定的简化,但是实际上可能用到的情况不多。
(四)含参表达式的数值代入运算
这才是主要想记录的地方,我们平时做题可能会先计算出一个带符号的表达式,后面再将具体的值代入,这该怎么做呢?
基本的运算过程就是将对应的符号用对应的数值代替,再用eval()进行求值,这个替换的过程可以用subs()函数,subs()调用的形式为:subs(表达式, y, x)。调用例子如下:
1、直接对表达式求值:subs(x^2+1,x,1), 得到的结果为2。
2、对变量表达式的代入:f1=x+1; f2=x+2; f3=f1*f2; subs(f3,x,-4); 得到的结果为6。
3、多变量的代入:f1=x+y; f2=x^2+y; f3=f1*f2; subs(f3,[x,y],[1,2]); 得到的结果为9。
4、使用其它变量代入:f1=x+y; f2=x^2+y; f3=f1*f2; a=1; b=2; subs(f3,[x,y],[a,b]); 得到的结果为9。
5、直接使用eval()求解即可(5.26updata): f=x+1; x=1; eval(f); 结果为2, 即使用eval计算时会将值代入。
(五)说明:
函数调用的更多细节可以使用help eval或者help subs()。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论