在matlab中为什么sin(pi)不等于0

发布网友 发布时间:2022-04-26 15:34

我来回答

5个回答

热心网友 时间:2023-10-12 03:35

首先你得明白,MATLAB定义的pi是一个近似数
来自MATLAB帮助:The expression sin(pi) is not exactly zero because pi is not exactly .
pi returns the floating-point number nearest the value of pi,pi定义为一个浮点数,任何浮点数都会有量化误差,因为pi为无限不循环数,不可能有精确的浮点数

热心网友 时间:2023-10-12 03:35

sin(pi)

ans =

1.2246e-016

这个可认为是0了, 因为双精度计算时是有误差的

热心网友 时间:2023-10-12 03:36

你肯定是pi在之前给了值.如pi=3.1415.事实上,pi是无限不循环小数.如果你事先给定了pi的值就有可能.

热心网友 时间:2023-10-12 03:36

由于pi是无限不循环小数,与180度的弧度不完全等同。

热心网友 时间:2023-10-12 03:37

因为浮点数不能表示精确值,并且计算会产生误差。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com