{1:}{2:}program prvocisl;const p=30;var{4:}vyber:word;{:4}{8:}n:integer; {:8}{10:}delitel,odmocnina:integer;jeprvocislo:boolean; {:10}{14:}sito,prvocisla:set of 2..p; dalsiprvocislo,nasobekprvocisla:word;{:14}{18:}i:integer{:18}; begin{3:}{5:}writeln('Program na demonstraci prvocisel'); writeln('Muzes si vybrat: zjisti zda zadane cislo je prvocislo...1'); writeln(' vypis prvocisel mensich nez ',p,'.........2'); write('Tva volba: ');readln(vyber){:5}; {6:}case vyber of 1:{7:}begin{9:}writeln( 'Program urci zda zadane cislo je prvocislo'); write('Zadej cele cislo vetsi nez 1: ');readln(n){:9}; {11:}if((n=2)or(n=3))then jeprvocislo:=true else if odd(n)then begin odmocnina:=round(sqrt(n));delitel:=3; while(n mod delitel<>0)and(delitel0;end else jeprvocislo:=false{:11}; {12:}writeln; if jeprvocislo then writeln('Zadane cislo n = ',n,' je prvocislo.')else writeln('Zadane cislo n = ',n,' neni prvocislo.'){:12};end; {:7}2:{13:}begin{15:}prvocisla:=[];sito:=[2..p];dalsiprvocislo:=2{:15}; repeat{16:}while not(dalsiprvocislo in sito)do dalsiprvocislo:=succ( dalsiprvocislo);prvocisla:=prvocisla+[dalsiprvocislo]{:16}; {17:}nasobekprvocisla:=dalsiprvocislo; while nasobekprvocisla<=p do begin sito:=sito-[nasobekprvocisla]; nasobekprvocisla:=nasobekprvocisla+dalsiprvocislo;end{:17}; until sito=[];{19:}writeln('1'); for i:=2 to p do if i in prvocisla then writeln(i){:19}; end{:13}end{:6}{:3};end.{:2}{:1}