3つの異なる配列で最小値を見つけようとしていますが、正しくないことがわかりません。たとえ最小であっても、真ん中の配列を返すことはないようです。常に0または2のいずれかです。私の論理エラーは何のようですか?
int smallest;
for(int i = 1; i < 3; i++)
{
if(queue[i].getCount() < queue[0].getCount())
smallest = i;
else
smallest = 0;
}
3つの異なる配列で最小値を見つけようとしていますが、正しくないことがわかりません。たとえ最小であっても、真ん中の配列を返すことはないようです。常に0または2のいずれかです。私の論理エラーは何のようですか?
int smallest;
for(int i = 1; i < 3; i++)
{
if(queue[i].getCount() < queue[0].getCount())
smallest = i;
else
smallest = 0;
}
コードのエラーを考えると、何をしようとしているのかを確認するのは少し難しいです。
私はあなたがこのようなものがもっと欲しいと思うでしょう:
int smallest = queue[0].getCount();
for(int i = 1; i < 3; i++)
{
if(queue[i].getCount() < smallest)
smallest = queue[i].getCount();
}
代わりに結果のインデックスが必要な場合は、次のようにしてみてください。
int smallest = 0;
for(int i = 1; i < 3; i++)
{
if(queue[i].getCount() < queue[smallest].getCount())
smallest = i;
}