Предмет: Информатика,
автор: fdgskm
Требуется найти n-ое число в последовательности простых чисел. n < 1000000. Помогите пожалуйста.
Ответы
Автор ответа:
0
var n,p,k,i,j:integer; f:boolean;
begin
write('n = ');
readln(n);
p:=2;
for i:=2 to n do
begin
f:=false;
while not f do
begin
p:=p+1;
k:=0;
for j:=2 to round(sqrt(p)) do
if p mod j = 0 then k:=k+1;
f:=k=0;
end;
end;
writeln(p);
end.
Пример:
n = 25
97
begin
write('n = ');
readln(n);
p:=2;
for i:=2 to n do
begin
f:=false;
while not f do
begin
p:=p+1;
k:=0;
for j:=2 to round(sqrt(p)) do
if p mod j = 0 then k:=k+1;
f:=k=0;
end;
end;
writeln(p);
end.
Пример:
n = 25
97
Автор ответа:
0
Можно использовать решето Аткина. Для Вашей задачи подойдет. Очень быстро считает и до 1000000 и больше.
Похожие вопросы
Предмет: Литература,
автор: minedayz311
Предмет: Психология,
автор: vasilisa1546
Предмет: Геометрия,
автор: topbmwdrift
Предмет: География,
автор: sweets32
Предмет: Алгебра,
автор: павэрфул