gpt4 book ai didi

c++ - 我需要我的程序说 "this value is not valid"

转载 作者:行者123 更新时间:2023-11-28 08:13:47 26 4
gpt4 key购买 nike

这是我工作的问题。

三角形数列是由自然数相加生成的。因此,第 7 个三角形数将为 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28。前十项为:1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...

让我们列出前七个三角形数的因数:

1: 1

3: 1,3

6: 1,2,3,6

10: 1,2,5,10

15: 1,3,5,15

21: 1,3,7,21

28: 1,2,4,7,14,28

我们可以看到 28 是第一个有超过五个因数的三角形数。第一个除数超过一百的三角形数是多少?

这是我的代码。我在处理错误时遇到问题。唯一有效的输入是数字。如果我输入数字以外的任何内容,我希望它响应“错误”或类似的内容。

int main()
{

int div=0,sum=0,num,i=1,count=0,a;
cout<<"Enter the number of divisors"<< endl;
cin>>a;
while(div<=a) {
div=0;
sum=sum+i;
for(int j=1;j<=sum;j++)
if (sum%j==0)
div++;
chk++;
i++;
}
cout<<"Value of first triangle number is "<<sum<<endl;
cout<<"Value of triangle number is "<<count<<endl;
return 0;
}

此外,我在伪代码和流程图之前完成了我的程序,所以如果有人可以帮助我指导我的伪代码和流程图,我将不胜感激。谢谢。 =)

最佳答案

检查输入和转换是否成功的最简单方法是检查流之后是否仍然良好:

if (std::cin >> a) {
// Success
} else {
// Failure
}

如果你想恢复并重试,那么你需要清除流的状态,并在重试之前删除错误的输入;像

std::cin.clear();
std::cin.ignore(unsigned(-1), '\n');

关于c++ - 我需要我的程序说 "this value is not valid",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8306130/

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