每行显示4个输出
Display output 4 per line
我第一次上编程课,也是这个论坛的新手。任何帮助将非常感激!在我的一次课堂作业中,我必须写一个程序来找出给定数字的因子,我已经把程序启动并运行了,但是其中一个规定是输出必须显示为一行四,这就是我遇到麻烦的地方。我在其他一些论坛上也读过,但我想我不明白在我的特殊情况下我必须做什么。
下面是我的代码:#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
您可以使用以下命令:
void display_factors(std::size_t n, std::size_t factor_by_line)
{
const char* sep = "";
std::size_t count = 0;
std::cout << n << " = ";
for (int i = 2; i <= n; ++i) {
while (n % i == 0) {
n /= i;
if (count == factor_by_line) {
std::cout << std::endl;
count = 0;
}
++count;
std::cout << sep << i;
sep = " * ";
}
}
std::cout << std::endl;
}
现场演示
相关文章:
- 有没有办法简单地从 GPU 调用多个 cpp 输出文件?
- C++多个输入和输出
- 如何在 main 函数中输出两个新字符串C++?
- 我的动态链接队列在同一输出流中调用时不正确地输出三个返回函数
- 当对字符变量使用toupper()时,所述char变量输出多个字符.我该如何防止这种情况发生
- 如何让变量随机输出四个单词之一
- CPP - strlen 不会输出多个单词的整个长度 [仅限 C 字符串]
- 长度为 20 的 Cout'ing 数组输出 23 个字符
- 如何在C 中输出两个字符串版本,一个具有逃生字符,另一个则不是
- C++ 字符输入仅输出第一个字母
- C++:如何一次输出两个字母的字符串
- C++ - 使用 IO 重定向输入和输出多个整数
- 如何随机输出两个字符串中的一个
- 按升序输出两个时间值
- 如何高效输出两个交替字符或无需循环
- 从1函数返回并输出2个整数
- 使std::cout在同一行中一个接一个地输出多个字符串
- 输出8192个字符后停止输出
- 在c++中对齐(格式化)输出//多个变量在一行中
- 如何在c++中使用pthread或诅咒同时向屏幕输出多个字符串