Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject); //vereinfachen
begin
sch_wort := edit1.text;
sch_wort_lang := length(sch_wort);
//Grossbuchstaben
//for n:=1 to sch_wort_lang do
// sch_wort[n]:= upcase(sch_wort[n]);
sch_wort:=UpperCase(sch_wort);
n:=0;
repeat //Sonderzeichen raus
n:=n+1;
if not(sch_wort[n] in['A'..'Z']) then
begin
sch_wort := copy(sch_wort,1,n-1)+ copy(sch_wort,n+1,99);
n:=n-1;
sch_wort_lang := sch_wort_lang -1;
end;
until n > sch_wort_lang;
n:=0;
repeat //Doubletten raus
n:=n+1;
buchstabe := sch_wort[n];
for k:=n+1 to sch_wort_lang do
if sch_wort[k]=buchstabe then
sch_wort := copy(sch_wort,1,k-1)+ copy(sch_wort,k+1,99);
until n>sch_wort_lang;
edit1.text := sch_wort;
end;
Die Position eines Buchstaben des Klartextes im StringGrid ermittelst Du so:
position:= ord(KlarText[i]) - ord('A') +1
Mit der Position kannst Du dann den Klartextbuchstaben mit dem Geheimbuchstaben austauschen.
P.S. Dein Code ist schwer zu lesen, Kommentierungen und Erklärungen und Einrückungen würden
den Code lesbarer machen, auch für Dich.
Falls Ihr auf die gleiche Schule geht, könnt Ihr Euch ja zusammentun. ->
http://www.delphipraxis.net/internal...878&highlight=
Grüße
Klaus