-4

我正在为一个类编写一个程序,其中用户输入一个被检查为偶数的数字,检查它是否可被 5 整除,如果满足这两个,则该数字将由 while 循环使用。澄清一下,如果数字是偶数并且可被 5 整除,则代码运行,如果它是偶数且可被 2 整除,则代码运行。第一组代码需要在 for 循环中,第二组代码(可被 2 整除)需要在 while 循环中。

我坚持使用 cin 并在第二组代码中使用它,第一组想要先操作它。

任何帮助解决这个问题都会很棒!

代码:

#include <iostream>
#include <string>
#include <fstream>    
#include <iomanip>

using namespace std;

int main ()
{
    system ("color F0");

    int number = 0, countIf = 0,countWhile = 0, i=0;

    cout << "Please enter a positive integer or zero to quit: ";
    cin >> number;
    cin.ignore();

    if (number < 0 || number%2 != 0)
        cout << "Error: The integer entered was either not positive or a zero. Try again." << endl;

    //else if (number%5 || (number%2) = 0)

    for (number%5; countIf < number; countIf +=5)
    {
        i = number / 10;
        i += countIf;
        cout << i << " ";        
    }
    cin.ignore();

    while (countWhile <= i && i%2) 
    {
        int x = 0;
        cout << x << " ";
        x += 2;
    }

    system ("pause");
    return 0;
}
4

2 回答 2

2

我在看你原来的 else if 语句

else if (number%5 || (number%2) = 0)

你在这里想要的是

else if (number%5 == 0 && number%2 == 0)

并在 else if 块中执行您的代码。

于 2013-04-05T17:33:26.907 回答
0

在操作数据之前将其复制到另一个变量。

cin>>a;
b=a;

并将 b 用于第二组。如果一个数是偶数,它显然能被2整除。所以你不需要检查一个数是否是偶数,它是否能被2整除

于 2013-04-05T17:21:49.270 回答