作业帮 > 综合 > 作业

为什么在matlab中输入sin(pi)得出的结果不是0,而是 >> sin(pi) ans = 1.2246e-016

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/10 17:37:42
为什么在matlab中输入sin(pi)得出的结果不是0,而是 >> sin(pi) ans = 1.2246e-016
为什么在matlab中输入sin(pi)得出的结果不是0,而是
>> sin(pi)
ans =
1.2246e-016
换成>> sin(sym(pi))
ans =
0
却可以得到结果,为什么同样是三角函数,cos(pi)可以是-1
为什么在matlab中输入sin(pi)得出的结果不是0,而是 >> sin(pi) ans = 1.2246e-016
数值计算系统,就是不理论的.只能无限的近似.所以如果遇到这种情况 千万不要写
if (sin(pi)==0)
%expression
end
这种语句,最好
if (abs(sin(pi)-0)