Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

Re: Primzahlen ermitteln?

  Alt 11. Mai 2007, 14:57
Ich will auch mal was posten

Eine einfach Lösung (ohne Optimierung!!!).
Aber als Beispiel für Jan13490 gut geeignet, da er schreibt Anfänger zu sein.

Mann muß natürlich nicht den ganzen Zahlenraum zwischen 1 und z durchlaufen,
aber diese Lösung ist einfach zu verstehen.


Delphi-Quellcode:
function isPrime(z: Integer):Boolean;
var
  i: Integer;
begin
  i := 2;
  // solange (z nicht durch i teilbar ist) und (i kleiner z ist) erhöhe i um 1
  while (z mod i > 0) and (i < z) do
  begin
    inc(i);
  end;
  // Bei z angekommen = Primzahl
  Result := (i = z);
end;


procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  for i := StrToInt(Edit1.Text) to StrToInt(Edit2.Text) do
  begin
    // wenn i Prim, dann ab ins Memo
    if isPrime(i) then Memo1.Lines.Add(IntToStr(i));
  end;
end;
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat