我正在上我的第一门编程课程,并且是这个论坛的新手。任何帮助将不胜感激!对于我的一项课堂作业,我不得不编写一个程序来查找给定数字的因数,我已经启动并运行了该程序,但其中一项规定是,输出必须四行显示,这就是我遇到麻烦了。我在其他一些论坛以及这里都读过,但是我想我不太了解我在特定情况下要做的事情。
这是我的代码:
#include <iostream>
using namespace std;
int main(){
int n;
while (cout << "Please enter a number: " && !(cin >> n) || (n < 0.0) || cin.peek() != '\n')
{
cout << "Input must be a positive number!" << endl;
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
}
for (int i=2; i <= n; i++)
{
while (n % i == 0)
{
n /= i;
cout << "*" << i;
}
}
cout << endl;
system ("PAUSE");
return 0;
}
最佳答案
您将需要在循环外添加一个计数器。
//int counter = 0;
for (int i=2; i <= n; i++)
{
while (n % i == 0)
{
n /= i;
cout << "*" << i;
}
}
计数器将需要跟踪已打印的条目数。
Once you have seen 4 entries printed:
print an extra newline
and set the counter back to 0
关于c++ - 每行显示输出4,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30516150/