Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一般に、 == 演算子は「数値」の等価性のテストには適していませんが、代わりに のようなことを行う必要がありますabs(a - b) < eps。ただし、配列内の最大の要素の位置を見つけたい場合max、要素が変更されずに返されると想定しても問題はありませんか? やってもいいですか
abs(a - b) < eps
max
[row, col] = find(a == max(a(:));
はい。
max2 つの値を比較するだけで、値を変更する可能性のある操作は実行しません。
a の典型的な C++ 実装を次に示しますmax。
template <class T> T max(T a, T b) { return a>b ? a : b; }
ご覧のとおり、この関数はまたはとまったく同じ値を返します。ab
a
b
Matlab は、行列形式、凝った書式設定ラッパーなどを追加するだけですが、そのカーネルは上記の例と同じ原則に従います。
はい、ここで平等を使用しても問題ありません。