0

特定の制約に基づいてテキスト文字列を返す if else ステートメントを作成しようとしています。最初の 3 つの制約は機能しますが、最後の制約のイベントが発生すると、2 番目の制約が再びトリガーされます。乱数ジェネレーターは時折 0 の値を使用していたので、それを考慮したかったのです。私はこれに慣れていないため、インデントなどについてお詫び申し上げます。

ここで少し調べてみましたが、これをカバーしているように見えるものは何も見つかりませんでした。見逃した場合は、正しい方向へのヒントもいただければ幸いです。

double txtestimateCategory = [mynum computeVolume];
NSLog(@"The volume is %f", txtestimateCategory);
int v = ((txtestimateCategory * 1));
if ((v >= 8000))
{
    NSLog(@"The box is large");
}
else if ((1 <= v < 1000))
{
    NSLog(@"The box is small");
}
else if ((1000 <= v < 8000))
{
    NSLog(@"The box is medium");
}
else
{
      NSLog(@"The box is a lie");
}
4

1 に答える 1

4

コンパレータは二項演算子です。あなたは書く必要があります:

else if (1 <= v && v < 1000)

(そうしないと、 のようなものを評価し、暗黙的true < 1000true変換され1ます。意図したものではありません!)

于 2012-09-17T23:09:04.830 に答える