Hi,
wir hatten in der Schule ein paar simple Chiffrieralgorithmen geschrieben.
Ich hab dann zu Hause mal die Vigenére codierung versucht:
Wikipediaeintrag
Ich habe das Quadrat in ein Stringgrid geschrieben.
Wenn ich jetzt mit folgender Funktion den Text verschüsseln will,
Delphi-Quellcode:
function stringcode (a,b:string):string;
var
x,y,i:integer;
stringbuffer:string;
begin
repeat
a:=a+a;
until length(a)>=length(b);
for i:=1 to length(b) do
begin
while not a[i]=grid.cells[x,0] do
x:=x+1;
while not b[i]=grid.cells[0,y] do
y=y+1;
stringbuffer:=stringbuffer+grid.cells[x,y];
x:=0;
y:=0;
end;
result:=stringbuffer;
end;
zeigt er mir am Gleichheitszeichen : "Operator ist auf Operandentyp nicht anwendbar"
Wenn ich statt
while not a[i]=grid.cells[x,0] do
es anders schreibe:
while a[i]<>grid.cells[x,0] do
Bekomme ich den Fehler "Undefinierter Bezeichner: 'grid'
Ich hoffe ihr könnt mir helfen, danke.