Cerința
Să se scrie un program care citește un număr natural k și afișează cel mai mic număr natural n mai mare decât 1, care nu este divizibil cu primele k numere prime și nu este prim.
Fișierul de intrare kprim.in conține pe prima linie numărul k.
Date de ieșire
Fișierul de ieșire kprim.out va conține pe prima linie numărul n, reprezentând cel mai mic număr natural n,care nu este divizibil cu primele k numere prime și nu este prim.
Restricții și precizări
1 ≤ k ≤ 10000
Exemplu
kprim.in
3
kprim.out
49
Explicație
Primele 3 numere prime sunt 2, 3, 5.
Numerele care nu sunt divizibile cu 2, 3 sau 5 sunt : 7, 11, 13, 17, 19, 23, 31, 37, 41, 47, 49, …
49 este cel mai mic număr care nu este prim.
Răspunsuri la întrebare
Răspuns de
9
#include<bits/stdc++.h>
using namespace std;
ifstream in("kprim.in");
ofstream out("kprim.out");
long long nrprim(long long x)
{
if(x<=1)
return 0;
if(x%2==0&&x!=2)
return 0;
for(int d=3;d*d<=x;d+=2)
if(x%d==0)
return 0;
return 1;
}
int main()
{
long long n,m,ap=0,p=1;
in>>n;
for(long long i=1;i<=10000000000;i++)
{
if(nrprim(i)==1)
{
p=i;
ap++;
}
if(ap==n+1)
break;
}
out<<p*p;
return 0;
}
Alexrai123:
Imi da 0 puncte
Alte întrebări interesante
Fizică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Chimie,
9 ani în urmă
Matematică,
9 ani în urmă