function CzyMersennea(liczba: Integer): Boolean;
var
l: Integer;
begin
l := liczba+1;
while l <> 1 do
begin
if l mod 2 <> 0 then
Break;
l := l div 2;
end;
Result := l = 1;
end;
procedure GenerujPierwszeMersennea(ile: Integer);
var
p, k, l: Integer;
begin
p := 2;
k := 0;
while k < ile do
begin
if p > 31 then
begin
Writeln('UWAGA: zakonczono generowanie ze wzgledu na moc typu Integer');
Break;
end;
l := Potega(2, p) - 1;
if CzyPierwsza(l) then
begin
Inc(k);
Writeln(k, ': ', l);
end;
Inc(p);
end;
end;
Wysłane po 31 sekundach:
function CzyPseudopierwsza(liczba: Integer): Boolean;
var
l: Integer;
begin
if liczba < 32 then
l := Potega(2, liczba)-2;
Result := l mod liczba = 0;
end;
procedure GenerujPseudopierwsze(ile: Integer);
var
p, l, k: Integer;
begin
k := 0;
p := 1;
while k < ile do
begin
if p > 31 then
begin
Writeln('UWAGA: zakonczono generowanie ze wzgledu na moc typu Integer');
Break;
end;
l := Potega(2, p)-2;
if (l mod p) = 0 then
begin
Inc(k);
Writeln(k, ': ', p);
end;
Inc(p);
end;
end;

[pascal]Liczby pierwsze
Rozpoczęty przez
Almond
, 18 02 2008 00:32
1 odpowiedź w tym temacie
#1
Napisano 18 02 2008 - 00:32
Mam taką prośbę czy mógłby mi ktoś wyjaśnić te programy??
#2
Napisano 28 02 2008 - 21:52
No cóż to raczej Pascal nie Delphi chyba że jest to aplikacja na Konsole ale raczej TP7.0. Szkoda że nie wkleiłeś całego programu.
Procedury i funkcje ogólnie szukają "Liczb pierwszych Mersennea"
http://math.pobieralnia.com/geometria/licz...rwsze-mersennea
Jak działają ?. Hmm, są to proste instrukcje języka Pascal, zupełne podstawy, brak - obiektów, rekordów, zbiorów, tablic ...
Naprawdę nie rozumiem w czym problem. Sprecyzuj pytanie
Procedury i funkcje ogólnie szukają "Liczb pierwszych Mersennea"
http://math.pobieralnia.com/geometria/licz...rwsze-mersennea
Jak działają ?. Hmm, są to proste instrukcje języka Pascal, zupełne podstawy, brak - obiektów, rekordów, zbiorów, tablic ...
Naprawdę nie rozumiem w czym problem. Sprecyzuj pytanie

Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych