小编Ray*_*ron的帖子

读取以空格分隔的输入数字

这可能是一个总的初学者的问题,但我还没有找到适合我的答案.

目前,我正在编写一个程序,用于接收用户输入的类(可以是一个或多个用空格分隔的数字),然后确定该数字是素数,完美还是两者都不是.如果数字是完美的,那么它将显示除数.

到目前为止,我已经写了黄金,完美的代码,并列出了除数.我被困在程序的输入部分.我不知道如何获取由空格分隔的输入,一次一个地通过我的循环.

这是我目前的计划:

cout<<"Enter a number, or numbers separated by a space, between 1 and 1000."<<endl;
cin>>num;

while (divisor<=num)
    if(num%divisor==0)
    {
        cout<<divisor<<endl;
        total=total+divisor;
        divisor++;
    }
    else divisor++;
if(total==num*2)
    cout<<"The number you entered is perfect!"<<endl;
else cout<<"The number you entered is not perfect!"<<endl;


if(num==2||num==3||num==5||num==7)
    cout<<"The number you entered is prime!"<<endl;

else if(num%2==0||num%3==0||num%5==0||num%7==0)
    cout<<"The number you entered is not prime!"<<endl;
else cout<<"The number you entered is prime!"<<endl;

return 0;
Run Code Online (Sandbox Code Playgroud)

它有效,但仅适用于单个数字.如果有人能帮助我让它能够读取由空格分隔的多个输入,那么我们将不胜感激.另外,只是旁注,我不知道将输入多少个数字,所以我不能只为每个数字创建一个变量.它将是一个随机数量的数字.

谢谢!

c++ spaces input

17
推荐指数
4
解决办法
9万
查看次数

标签 统计

c++ ×1

input ×1

spaces ×1