我想知道是否可以编写一个包含两个数字的代码,当第二个数字是' x'高于/低于第一个数字做某事。我写了一个示例代码,以使其更清晰。感谢帮助,谢谢!
int main()
{
int first = 0;
int second = 0;
cin >> first;
cin >> second;
if (second = 0.5 > first) //I assumed it would look close to this. This obv isnt working but I cant figure out the correct way.
{
cout << "Too big\n";
}
else if (second = 0.5 < first)
{
cout << "Too low\n";
}
else {
cout << "Calculation will be made\n";
}
return 0;
}
因此,在此示例中,当第二个数字介于0.5的范围与第一个数字之间时,代码将继续。
答案 0 :(得分:3)
如果您希望金额检查一定金额,请将您的条件更改为:
if (second - first > 0.5)
{
cout << "Too Big!\n";
}
else if (second - first < 0.5)
{
cout << "Too low\n";
}
这将检查2个nunbers之间的差异是否符合您想要的标准。此外,将您的数字类型更改为double
,因为当前截断将比较错误的数字。例如,在使用变量检查值时,请尝试以下操作:
int main()
{
double first = 0;
double second = 0;
double x = 0;
cin >> first;
cin >> second;
cin >> x;
if (second - first > x) {
cout << "Too Big!\n";
}
else if (second - first < x) {
cout << "Too low\n";
}
else {
cout << "Calculation will be made\n";
}
return 0;
}
答案 1 :(得分:0)
绝对有可能。问题是你想做什么。是
if(second > first + x) {
cout << "second x or more than x bigger than first" << endl;
} else if(second + x < first) {
cout << "second x or more smaller than first" << endl;
} else {
cout << "second - x > first > second + x" << endl;
}
你喜欢什么?
当然第二个,第一个和x应该具有相同的数据类型;你不应该不小心混合int和double。
答案 2 :(得分:0)
我不确定你的问题,但我认为你的意思是:
int main() {
int first;
int second;
cin>>first;
cin>>second;
if (second >first + 0.5) {
}
如果你想要第二个比第一个大至少0.5。 如果不是,请重新提出您的问题
答案 3 :(得分:0)
使用三元运算符:
int main()
{
double first;
double second;
cin >> first;
cin >> second;
(second - first > 0.5) ? cout << "Too Big!\n" : ( (second - first < 0.5) ? cout << "Too low\n" : cout << "Calculation will be made\n"; );
}
格式为: &LT;条件&gt; ? &LT;真实案例代码&gt; :&lt; false-case-code&gt ;;