Zitat von
Bblackhawk:
zu #2 das problem ist, dass es dann, wenn ich den datentypen von i ändere, folgendes nicht mehr funktioniert...
klartext[i] := chr(acode);
Mit Verlaub, aber das glaube ich nicht das dem so ist.
Wenn Klartext bei Dir ein String ist, dann sind die Indizes
des Strings vom Typ Integer (Ganzzahl) und kein realWert.
[edit]
Warum ist bei acode so definiert:
var acode : extended;
Auch hier braucht es keinen Realwert sondern nur einen Ganzzahlwert
den Ord(...) liefert auch nur ein Integer zurück.
Delphi-Quellcode:
procedure tcodiermaschine.entschluesseln;
var
i : Integer;
acode : Integer;
begin
// Klartext zu ASCII
for i := 1
to length (klartext)
do
begin
// 1 ASCII- Code der i-ten Buchstaben ermitteln
acode := ord(codetext[i]);
// 2 Durch formel ( M = C^d mod N ) verschlüsseln
acode := (acode - round(exp(23*ln(146)))
mod 187);
// 3 Das Zweichen mit dem ASCII- Code acode an der i-ten Stelle im chiffre ablegen
klartext[i] := chr(acode);
end;
end;
[/edit]
Grüße
Klaus