Hallo zusammen,
ich habe mir ein Programm zur generierung eines Keys mit einer einfachen Codierung überlegt, dass entschlüssen klappt, nur das generieren eines Schlüssels klappt noch nicht so wirklich.
Folgendes zu Methodik:
Alles wird zwischen ungeraden und geraden Zahlen unterschieden und demnach wird der rest ausgegeben also 1 oder 0 das ergibt dann den Schlüssel der im Programm hinterlegt ist, der Kunde bekommt einen Dezimalschlüssel.
Ich will aufgrund des Binärschlüssels einen Dezimalschlüssel generieren also, wenn eine Null da steht soll er mir eine gerade Zahl geben und, wenn eine eins da steht soll er mir eine ungerade geben.
Soviel zur Theroi jetzt das woran ich scheiter:
Also ich lese den Binärschlüssel erstmal aus einem Editfeld ein und wöchte das er mir dementsprechend einen Dezimalschlüssel generiert, dass klappt aber leider nicht aufgrund eines syntaktischen Fehlers.
Nun zum Programm:
Delphi-Quellcode:
var schluessel : String;
i : Integer;
key : array of Integer;
zwisch : array of integer;
test1 : array[0..0,3..3,7..7,9..9] of Integer; // 2 Statische array für gerade und ungerade
test2 : Array[2..2,4..4,6..6,8..8] of integer;
begin
schluessel := edit4.text; // Einlesen des Binärschlüssels
SetLength(schluessel, Length(schluessel));
for I := 0 to length(schluessel) - 1 do
begin
zwisch[i] := StrToInt(schluessel[i]); // Schlüssel zwischenspeichern
case i of //case anweisung zum unterscheiden zwischen 1 und 0
0: key[i] := random (test1); // Schlüssel füllen mit ungerade oder geraden zahlen
1: key[i] := random (test2); // hier tritt auch der Fehler auf
end;
end;
end;