Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.457 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: Optimierung eines Stück Codes für eine Wette!

  Alt 12. Nov 2009, 08:27
Nach dem Schleifendurchlauf ist i undefiniert, insbesondere da der Compiler For-Schleifen optimiert (z.B. abwärts zählen bis 0).

Im Prinzip hab ich nichts neues hinzuzufügen, aber da ich mir schon die Mühe gemacht hab:
Delphi-Quellcode:
For D := Prim[anz_Prim] + 1 To max_Prim do
begin
  if Odd(D) then
  begin
    Pmax := Trunc(Sqrt(D));

    flg_Prim := True;
    for I := 1 to anz_Prim do
    begin
      P := Prim[I];
      flg_Prim := ((D mod P) <> 0);
      if not flg_Prim then
        Break;
      if P >= PMax then
        Break;
    end;
      

    If flg_Prim then
    begin
      Inc(anz_Prim);
      Prim[anz_Prim] := D;
      {lst_Ausgabe.Items.Add(IntToStr(D) + ' ist eine Primzahl!'); } 
    end;
  end;
end;
  Mit Zitat antworten Zitat