gpt4 book ai didi

c++ - 当我输入 3 个偶数时,它显示我输入 4

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:10 26 4
gpt4 key购买 nike

#include <iostream>
using namespace std;

int main(){
int odd=0, even=0, value;
cout<<"Enter Numbers\n";
cout<<"Enter 0 to End\n";
do{

cin>>value;
if (value % 2==0)
even++;
else
odd++;
}
while (value !=0);

cout<<"The number of odd numbers is: "<<odd<<endl;
cout<<"The number of even numbers is: "<<even;

return 0;
}

出了点问题,我需要帮助,当我结束程序时,偶数总是 +1。

最佳答案

问题是,当您输入 0 结束循环时,它会在退出循环之前将其计为偶数...

改为一输入0就中断,使用无限循环

for (;;)
{
cin>>value;
if (!value) break; // stop now
if (value % 2==0)
even++;
else
odd++;
}

如评论中所述,另一种方法是使用条件 while 循环,如果输入失败,该循环会短路并测试值是否为零。在这种情况下,您不需要在循环中测试零:

while ((cin >> value) && value) { ... }

关于c++ - 当我输入 3 个偶数时,它显示我输入 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52817605/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com