【资料图】

1、在Matlab中,inf为无穷大量+∞,-inf为无穷小量-∞,在Matlab程序执行时,即使遇到了以0为除数的运算,也不会终止程序的运行,而只给出一个“除0”警告,并将结果赋成inf,继续执行。

2、Matlab中的Inf和-Inf分别代表正无穷和负无穷,NaN表示非数值的值,产生一般是由于0 做了分母或者运算溢出,产生了超出双精度浮点数数值范围的结果,非数值量则是因为0/0,或者Inf/Inf型的非正常运算。

3、扩展资料:对于较大数乘积运算结果中的inf,可以采用sym(a)符号变量解决。

4、例如,求区间[1,1000000]内所有质数的乘积。

5、若直接运行:ticA=1:1000000;B=A(isprime(A));prod(B)toc得出的结果将是inf,这样并不知道结果的大致大小,可以采用以下指令:ticA=1:1000000;B=A(isprime(A));vpa(prod(sym(B)),6)toc将A中质数组成的矩阵B先经过符号变量转化,之后用vpa( )函数,设定有效数字为六位,这样就能得到结果ans =。

本文分享完毕,希望对大家有所帮助。

关键词: