Entwickler-Ecke
Sonstiges (Delphi) - cäsar entschüsselung
mlhk - Mi 06.05.09 15:00
Titel: cäsar entschüsselung
hey,
könntet ihr euch mal diesen quelltext anschauen, ich finde den fehler einfach nicht, das ist eine cäsar entschlüsselung mit combobox, also um einen text zu endschlüssel wen das weiß um wie jeder buchstabe verschoben wurde
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| function entschluesselung(text:string;zeichen,b:integer):string ; var i,a : integer; var ergtext : string; begin for i := 1 to zeichen do begin a:= ord(text[i]); a:=a-b-1; ergtext:=ergText+chr(a); end; text:=''; entschluesselung:= ergtext; end;
procedure TForm2.E_entClick(Sender: TObject); var text,funktionsergebnis:string; var zeichen,b : integer; begin b:=ComboBoxEx1.ItemIndex; text:=ausgabe.text; zeichen:=length(text); Lzeichen.Caption:= inttostr (zeichen); funktionsergebnis:= entschluesselung(text,b,zeichen); eingabe.text:=funktionsergebnis; end; |
schon mal danke im voraus
mfg
max
Moderiert von
Narses: Delphi-Tags hinzugefügtModeriert von
Narses: Topic aus Open Source Projekte verschoben am Mi 06.05.2009 um 15:30
k-weddige - Mi 06.05.09 15:52
Bei dem Code liegt einiges im Argen...
- Schau dir mal mod an.
- Die Länge des Textes als Parameter zu übergeben ist nur eine Fehlerquelle. Bestimm die in der Funktion!
- text:=''; ist überflüssig
- Anstatt ergtext kannst du auch gleich entschluesselung (oder result) benutzen.
Delete - Mi 06.05.09 15:54
Außerdem sind die Parameter b und zeichen wohl vertauscht.
Mitmischer 1703 - Do 07.05.09 18:14
Bitte formatiere deinen Quelltext (Leerzeichen) und Co.. :wink:
Das macht den Code um einiges verständlicher, vor allem, da du sofort die Anzahl der begins und ends im Blick hast :)
So in etwa sieht das dann aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| function Entschluesselung(text:string; zeichen,b:integer):string ; var i,a : integer; ergtext : string; begin for i := 1 to zeichen do begin a:= ord(text[i]); a:=a-b-1; ergtext:=ergText+chr(a); end; result:= ergtext; end;
procedure TForm2.E_entClick(Sender: TObject); var text,funktionsergebnis:string; zeichen,b : integer; begin b:=ComboBoxEx1.ItemIndex; text:=ausgabe.text; zeichen:=length(text); Lzeichen.Caption:= inttostr (zeichen); funktionsergebnis:= entschluesselung(text,b,zeichen); eingabe.text:=funktionsergebnis; end; |
Jakob_Ullmann - Do 07.05.09 20:10
Naja, ein Anfang. Zumindest die Einrückung ist korrekt. Für weiteres, was die Lesbarkeit deutlich erhöht (Gewohnheitssache, aber die meisten sind wohl daran gewöhnt):
http://www.delphi-treff.de/delphi-styleguide/
So erstmal fällt es mir relativ schwer, bestimmte Abschnitte wiederzuerkennen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!