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

Trying to make a while Loop that subtracts a number until it reaches desired value and if subtraction surpasses desired value, display it and stop

本文关键字:一个 如果 显示 过了 while 循环 数字      更新时间:2023-10-16

我是编程和c++的新手,所以我知道这可能是一个愚蠢的问题,但我真的很感激你的帮助。正如标题所说,我试图在键入循环时进行减法运算,以达到所需的值,在这种情况下:0该代码使用来自用户输入的两个随机数。第一个数是被减数,第二个数是减数然而,我遇到的问题是,如果减法超过了所需的值,循环将不会显示它,并且用户将看到显示的值高于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;
}

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

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

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

您可以添加

cout << a << 'n';

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

嗨,我刚刚切换了这个代码:

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

正如你所解释的那样:

while ( a > 0 )
{
  a= a-b;
  cout << a << 'n';
}
相关文章: