C++ 帮助:如何停止 while 循环并计算总和?
C++ help : how do I stop a while loop and cout the sum?
我尝试构建一个简单的 C++ 程序。基于控制台的交互式计算器。 while
循环有问题。它在主体内部执行代码,但没有按照特定顺序在控制台上看起来不错。
我试图将 sum = sum + num
放在 while 之外,但是错了。我尝试了很多东西,但都不行。
int add , sum = 0 ;
while(add==1 && num!=0){
cout << "Enter a number , when you are done please type in 0 : ";
cin >> num;
numbersEntered++;
if (num!=0){
//the problem kind of begins here
sum = sum + num;
cout<<" Your total is : " <<sum<<endl;
输出如下:
Enter a number , when you are done please type in 0 : 5
Your total is : 5
Enter a number , when you are done please type in 0 : 4
Your total is : 9.
我在这个例子中输入了 5 和 4。明确地说,我不期望这个输出。
假设您只想在最后打印总和,这应该可行。只需将其从 while 循环中取出即可。只有输入 0
才会停止。
#include <iostream>
using namespace std;
int main() {
int add = 1, sum = 0, numbersEntered = 0, num = 1;
while(add==1 && num!=0) {
cout << "Enter a number, when you are done please type in 0: ";
cin >> num;
numbersEntered++;
sum = sum + num;
}
cout << "Your total is: " << sum << endl;
}
可以删除检查 num
是否不为 0 的 if
条件,因为 sum + 0
与不添加到 sum
相同。
我尝试构建一个简单的 C++ 程序。基于控制台的交互式计算器。 while
循环有问题。它在主体内部执行代码,但没有按照特定顺序在控制台上看起来不错。
我试图将 sum = sum + num
放在 while 之外,但是错了。我尝试了很多东西,但都不行。
int add , sum = 0 ;
while(add==1 && num!=0){
cout << "Enter a number , when you are done please type in 0 : ";
cin >> num;
numbersEntered++;
if (num!=0){
//the problem kind of begins here
sum = sum + num;
cout<<" Your total is : " <<sum<<endl;
输出如下:
Enter a number , when you are done please type in 0 : 5
Your total is : 5
Enter a number , when you are done please type in 0 : 4
Your total is : 9.
我在这个例子中输入了 5 和 4。明确地说,我不期望这个输出。
假设您只想在最后打印总和,这应该可行。只需将其从 while 循环中取出即可。只有输入 0
才会停止。
#include <iostream>
using namespace std;
int main() {
int add = 1, sum = 0, numbersEntered = 0, num = 1;
while(add==1 && num!=0) {
cout << "Enter a number, when you are done please type in 0: ";
cin >> num;
numbersEntered++;
sum = sum + num;
}
cout << "Your total is: " << sum << endl;
}
可以删除检查 num
是否不为 0 的 if
条件,因为 sum + 0
与不添加到 sum
相同。