Das mit der Matrix hat euer Lehrer wohl etwas anders gemeint, du verwendest ja gar keine?
Delphi-Quellcode:
type
TChiffreMatrix = array [1..2, 1..2] of double; // falls Array bei 1 beginnen soll
TTextMatrix = array [1..2, 1..5] of double; // für max. 10 Zeichen
...
var
Chiffre, InversChiffre: TChiffreMatrix;
Text, Decrypt, Encrypt: TTextMatrix;
S1, S2: string;
Und dann eben die Matritzenmultiplikationen durchführen:
Delphi-Quellcode:
S1 := 'Test';
// Chiffre setzen
Chiffre := ...
// Text in Matrix umwandeln
Text := TextToMatrix(S1);
// Verschlüsseln
Encrypt := MultAB(Chiffre, Text);
// Entschlüsseln
InversChiffre := MatrixInversion(Chiffre);
Decrypt := MultAB(InversChiffre, Encrypt);
// Matrix in Text umwandeln
S2 := MatrixToText(Decrypt);
// Kontrolle
S1 = S2 ?
Text = Decrypt ?