Witam, mógłby mi ktoś pomóc odczytać poniższy program, tzn. napisać co się dzieje po kolei w podanym kodzie...
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils,
Math;
var
licznikpetli,liczba,liczbamniej,modul,i,j,pmniejint,pint,mersmniejint,mersint:integer;
niepierwsza:byte;
licznik,p,pmniej,mers,mersmniej,mers1:real;
begin
writeln ('podaj a dla przedzialu <1, a> w ktorym nastapi szukanie liczb Mersennea:');
readln (mers);
mers1:=mers;
licznik:=mers;
p:=2;
repeat
begin
niepierwsza:=0;
pmniej:=p-1;
pmniejint:=round(pmniej);
pint:=round(p);
for i:=2 to pmniejint do
begin
modul:=pint mod i;
if modul=0 then niepierwsza:=1;
end;
if niepierwsza=0 then
begin
niepierwsza:=0;
mers:=power(2,p)-1;
mersmniej:=mers-1;
mersmniejint:=round(mersmniej);
for i:=2 to mersmniejint do
begin
mersint:=round(mers);
modul:=mersint mod i;
if modul=0 then niepierwsza:=1;
end;
if niepierwsza=0 then
begin
if mers<licznik then
writeln (mers:10:0);
end;
end;
p:=p+1;
end;
licznikpetli:=licznikpetli+1;
{writeln (licznikpetli, '-licz');}
until mers>licznik;
writeln ('liczenie zakonczone, wcisnij enter...');
readln;
end.
{2^p-1 ma byc pierwsza mers1:=power(2, p)-1}