如何判定这两个数相等
mathematica吧
全部回复
仅看楼主
level 6
sgylvqº 楼主
0.4694817600789397`
0.4694817600789395`
理论上是相等的,但是因为原始数据的偏差而等到差距极小的两个数
Chop[0.4694817600789397`, 10^-12] ===
Chop[0.4694817600789395`, 10^-12]
NumberForm[0.4694817600789397`, 10^-10] ===
NumberForm[0.4694817600789395`, 10^-10]
N[0.4694817600789397`, 12] === NumberForm[0.4694817600789395`, 12]
都是返回false
2021年07月06日 01点07分 1
level 6
sgylvqº 楼主
Chop[0.4694817600789397` - 0.4694817600789395`, 10^-10] === 0
这个可以,但并不方便一些依赖于取等判定的操作,比如
{0.597415437550162`, 0.4694817600789397`, 0.4694817600789395`, \
0.3903471289235375`}//. {___, m_, ___, m_, ___} -> m
有没有输入0.4694817600789397`,输出0.46948的函数[乖]
2021年07月06日 01点07分 2
level 6
sgylvqº 楼主
SetPrecision[0.4694817600789397`, 10] ===
SetPrecision[0.4694817600789395`, 10]
判定为true[真棒]
2021年07月14日 05点07分 5
1