Ocena użytkownikóww: ***** / 6
Nadesłany przez Tomasz Lubiński, 26 lipca 2005 01:00
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.
Sito_Eratostenesa - Delphi/Sito_Eratostenesa.dpr:
//www.algorytm.org
//sito Eratostenesa - poszukiwanie liczb pierwszych
//(c)2002 Tomasz Lubinski
program Sito_Eratostenesa;
uses
Forms,
Sysutils,
Math;
{$R *.RES}
{$Apptype console}
var
zakres,i,j,do_kad: Integer;
tablica: Array of Integer;
begin
writeln('Podaj gorny zakres, do ktorego chcesz odnalezc liczby pierwsze');
readln(zakres);
SetLength(tablica,zakres+1);
do_kad:=floor(sqrt(zakres));
for i:=1 to zakres do tablica[i]:=i;
for i:=2 to do_kad do
if tablica[i]<>0 then
for j:=i+1 to zakres do
if (j mod i = 0) then tablica[j]:=0;
writeln('Liczby pierwsze z zakresu od 1 do '+IntToStr(zakres));
writeln;
for i:=2 to zakres do if tablica[i]<>0 then write(IntToStr(i)+', ');
readln;
end.