如果數字小于或等于 1 或 1000,我希望它不顯示總和的結果。我不知道 usingif是否是最好的方法,但這就是我嘗試使用的方法,我真的不明白為什么它不起作用。我也嘗試用||and撰寫條件&&,但那些也不起作用。
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int sum;
int a, b, c;
int main() {
cin >> a;
cin >> b;
cin >> c;
sum = a b c;
if ( 1 <= a, b, c <= 1000) { //also tried ( 1 <= a || b || c <= 100) and ( a, b, c >= 1 && a, b, c <= 1000)
cout<< sum;
}
else {
cout<< "can't calculate";
}
return 0;
}
uj5u.com熱心網友回復:
此 if 陳述句中的運算式
if ( 1 <= a, b, c <= 1000)
是帶有逗號運算子的運算式。它相當于
if ( ( 1 <= a ), ( b ), ( c <= 1000 ) )
運算式的值是其最后一個運算元的值。也就是這個 if 陳述句等價于
if ( ( c <= 1000 ) )
看來你的意思
if ( 1 <= a && a <= 1000 && 1 <= b && b <= 1000 && 1 <= c && c <= 1000 )
{
std::cout << a b c << '\n';
}
注意計算總和是沒有意義的
sum = a b c;
在 if 陳述句中檢查變數 a、b 和 c 的值之前。
uj5u.com熱心網友回復:
- 為什么你有這么多包含?您的代碼只需要 iostream。其他任何東西都可以洗掉。
- 您的 if 條件沒有正確的語法。你不能寫“a and b and c should be under 1000”,你必須為每個 var 寫。嘗試:
a >= 1 && a <= 1000 &&
b >= 1 && b <= 1000 &&
c >= 1 && c <= 1000
uj5u.com熱心網友回復:
你可能想要這個:
if ( a >= 1 && b >= 1 && c >= 1 &&
a <= 1000 && b <= 1000 && c <= 1000 )
{
std::cout << a b c;
}
您的代碼不正確。您必須使用正確的語法。
注意:請參閱為什么是“使用命名空間標準;” 被認為是不好的做法?
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/408130.html
標籤:
