Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.034 Beiträge
 
Delphi 12 Athens
 
#14

Re: Exponentieren und dann Modulo: große Zahlen

  Alt 16. Mai 2008, 18:26
stümmt, geht aber immernoch nicht richtig ... und irgendwie bekomm ich keine Fehlermeldung o.O
Delphi-Quellcode:
{$OVERFLOWCHECKS ON}
{$RANGECHECKS ON}

function mod_exp(basis, exponent, modulo: Integer): Int64;
var basis64: Int64;
begin
  Result := 1;
  basis64 := basis;
  while exponent > 0 do begin
    if exponent and $1 <> 0 then Result := (Result * basis64) mod modulo;
    basis64 := (basis64 * basis64) mod modulo;
    exponent := exponent div 2;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Caption := IntToStr(mod_exp(666, 58613, 81079));
end;
nja mit TBigInt

mein kleiner 512-Bit Integer ist noch nicht ganz fertig (die Grundrechenarten sollten in einigen Tagen aber laufen)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat