尝试做一个while循环,减去一个数字,直到它达到所需的值,如果减法超过所需的值,显示它并停止

时间:2014-04-26 15:29:36

标签: c++ loops while-loop cin subtraction

我是编程和c ++的新手,所以我知道这可能是一个愚蠢的问题,但我真的很感激帮助。正如tittle所说,我试图在类型循环达到期望值时进行减法,在这种情况下:0 代码使用来自用户输入的两个随机数。第一个数字是minuend,第二个是减数 但是,我遇到的问题是,如果减法超过所需的值,循环将不会显示它,并且用户将看到显示的数字高于0的数字。我想修复所以它显示最接近的负数0然后停止。这是代码:

#include <iostream>

using namespace std;

int main()
{
    int a;
    int b;



cout <<" enter a: ";
cin >> a;
cout << "enter b: ";
cin >> b;


while ( a > 0 )
{
cout << a << '\n';
a= a-b;

}

return 0;
}

我做错了什么,我该如何解决?感谢

3 个答案:

答案 0 :(得分:1)

您在减少之前打印a。尝试切换循环中的语句,如下所示:

while ( a > 0 )
{
    a = a - b;
    cout << a << '\n';
}

答案 1 :(得分:1)

你可以添加

cout << a << '\n';
循环后再次

- 你知道你有正确的价值。或者您可以通过切换到使用do ... while循环来避免重复该行。

答案 2 :(得分:0)

您好我刚刚切换此代码:

while ( a > 0 )
{
  cout << a << '\n';
  a= a-b;
}

到此,它的解释如下:

while ( a > 0 )
{
  a= a-b;
  cout << a << '\n';
}