Добавил(а) Administrator
|
21.03.17 10:18 |
Прості числа
https://www.e-olymp.com/uk/problems/830
https://www.e-olymp.com/az/problems/5212
https://www.e-olymp.com/ru/problems/22
Решето Ератосфена
http://e-maxx.ru/algo/eratosthenes_sieve
Варіант 1
|
Варіант2
|
for i:=2 to n do
begin
p:=0;
for j:=2 to round(sqrt(i)) do
if i mod j =0 then p:=1;
if p=0 then write(i,' ');
end;
|
for i:=1 to n do a[i]:=i;
a[1]:=0;
i:=1;
while i<=n div 2 do begin
while a[i]=0 do i:=i+1;
//writeln(i);readln;
j:=i+a[i];
while j<=n do begin
a[j]:=0;
j:=j+a[i];
end;
i:=i+1;
//for k:=1 to n do write(a[k],' ');readln;
end;
for k:=1 to n do
if a[k]<>0 then ///write(a[k],' ');
writeln;
|
|