gpt4 book ai didi

matlab - max 会引入舍入误差吗?

转载 作者:行者123 更新时间:2023-12-04 05:20:54 26 4
gpt4 key购买 nike

一般来说,== 运算符不适合测试“数字”相等性,但应该做类似 abs(a - b) < eps 的事情。 .但是,当我想找到数组中最大元素的位置时,是否可以假设 max将返回元素不变?可以吗

[row, col] = find(a == max(a(:));

最佳答案

是的。
max只比较两个值,不对它们做任何可能改变它们值的操作。

这是 max 的典型 C++ 实现:

template <class T>
T max(T a, T b) {
return a>b ? a : b;
}

如您所见,此函数将返回与 a 完全相同的值。或 b .

Matlab 只是为其添加了矩阵形式、花哨的格式化包装器等,但其内核将遵循与上述示例相同的原则。

所以是的,在这里使用相等是可以的。

关于matlab - max 会引入舍入误差吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13702138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com