我需要帮助来解决我的活动问题

时间:2020-10-15 02:50:54

标签: c++

所以我需要我的帮助来更正我的代码,该代码已分配给我的编程类分配。我的活动是为从1到99的整数打印可被5整除的数字。因此,我尝试这样编写代码:

#include <iostream>
using namespace std;

int main () {
int num, min, max;
cout << "Enter Number: ";
cin >> num;
min = 1;
max = 99;
if (num > min || num < max) {
    if (num % 5 == 0) {
        cout << "Divisible.";}
    else {
        cout << "Not Divisible";}
        }
else { 
    if (num % 5 == 0) {
        cout << "Error Input.";}
    else {
        cout << "Error input.";}
    }
return 0;
}

因此,当我编译并运行时,我测试是否输入5的整数倍。当我输入0时,它说“错误输入”,这是正确的。但是,当我输入100时,它表示“可除”而不是“错误输入”。我的代码的正确输入是什么?

2 个答案:

答案 0 :(得分:1)

输入是1到99之间的整数,这意味着它应该>> 1 AND <= 99。

所以,只需更改

if (num > min || num < max)

if (num >= min && num <= max)

答案 1 :(得分:0)

您在第一条 if 语句中犯了一个错误。当您提供 OR 运算符时,即使仅满足一个条件,它也会返回true。

您应使用 AND 运算符使代码按预期工作。

此外,您也不必使用minmax变量,这会使程序变得不必要的大(尽管只有2行,但仍然如此)。