我被要求创建一个程序,要求用户输入正整数值,而程序使用循环来获取从1到n(用户输入)的所有数字的总和。因此,假设用户输入5,程序将执行1 + 2 + 3 + 4 + 5 = 15
这是到目前为止的代码
#include <iostream>
using namespace std;
int main()
{
int number; int sum = 0; // variables
cout <<"Please input an integer greater than zero\n"
<<"Please refrain from using a negative integer." <<endl;
cin >> number; // user input
for (int i=1; i <= number; i++) // looping statement
{
sum = sum + i; // formula that takes user digits and finds sum
cout << sum;
}
我的问题是,当我编译程序时,例如,我输入3,程序的输出将是“136”
我希望它说1 + 2 + 3 = 6或类似“整数之和为6”这样的东西我只想显示该值的总和。 我是c ++的新手,任何帮助都会受到赞赏。谢谢!
答案 0 :(得分:2)
您正在循环中编写cout << sum
。这意味着每次循环运行时都会得到一个数字输出(它实际上是1
然后是3
然后是6
,它们会一起刷新并以136
形式出现。在以下}
之后移动该语句。
答案 1 :(得分:0)
以下是如何获得1 + 2 + 3 = 6输出:
#include <iostream>
using namespace std;
int main()
{
int number; int sum = 0; // variables
cout <<"Please input an integer greater than zero\n"
<<"Please refrain from using a negative integer." <<endl;
cin >> number; // user input
for (int i=1; i <= number; i++) // looping statement
{
sum = sum + i; // formula that takes user digits and finds sum
if ( i == number )
cout << i;
else
cout << i << "+";
}
cout << "=" << sum;
}