gpt4 book ai didi

c++ - 难以实现对每行 C++ 上打印的整数数量的限制

转载 作者:太空狗 更新时间:2023-10-29 20:22:00 24 4
gpt4 key购买 nike

我已经看到了这个问题,但我在将一些解决方案实现到我自己的代码中时遇到了困难。

正在处理的程序查找数组中的所有质数,并计算查找所有质数所需的时间。不过,其中一项规定是让程序每行只打印 10 个数字。我尝试了几种不同的方法来让它工作,但没有一种方法打印出我需要它们的方式。这是当前代码:

#include "stdafx.h"
#include <iostream>
#include <time.h>
#include <stdio.h>
using namespace std;

static const int N = 1000;

int main()
{


int i, a[N];

clock_t start = clock();

for (i = 2; i < N; i++) a[i] = i;
for (i = 2; i < N; i++)
if (a[i])
for (int j = i; j*i < N; j++) a[i*j] = 0;

start = clock() - start;

for (i = 2; i < N; i++)
if (a[i]) cout << " " << i;
if ((i = 1) % 10 == 0)
cout << "\n";

printf("\nIt took %d clicks (%f seconds) to find all prime numbers.\n", start, ((float)start) / CLOCKS_PER_SEC);

return 0;
}

我确定这是我自己的一个简单错误,或者我对它的工作原理没有正确的理解。如果有人能阐明这个主题,我们将不胜感激,谢谢。

最佳答案

只需创建一个新的计数器,来计算找到的素数。

int primes = 0;
for (i = 2; i < N; i++) {
if (a[i]) {
primes++;
cout << " " << i;
if ( primes % 10 == 0)
cout << "\n";
}
}

关于c++ - 难以实现对每行 C++ 上打印的整数数量的限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39967188/

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