Найти и вывести ** экран первые n простых чисел в С++(желательно без массива)

0 голосов
46 просмотров

Найти и вывести на экран первые n простых чисел в С++(желательно без массива)


Информатика (14 баллов) | 46 просмотров
0

слабо без массива( так могу напивсать

0

а с массивом тогда как?

0

без массиваконечно можно тупо проверять все числа на простоту и отсчитывать первые н, но с массивом проверка идет эффективнее, ведь проверяем не все делатели, а только простые

Дан 1 ответ
0 голосов

Например так
#include
#include
using namespace std;
int main(void)
{
int n,count=1,i=2;
cin>>n; int a[n+1]; a[0]=2;
while(count {
bool b=true;
for(int j=0;j if(a[j]>sqrtl(i)+1) break;
else
{
if(i%a[j]==0) b=false;
if(b) {a[count]=i; count++;}
i++;
}
}
for(int i=0;i return 0;
}
ускорил работу еще немного

(5.2k баллов)
0

спасибо за помощь))