Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Zahlen und Buchstaben zuweisen
read - Mi 10.03.04 21:00
Titel: Zahlen und Buchstaben zuweisen
hi @ all
okay ist vielleicht 'ne dumme frage - bin newbie und habe volle blockade
also ich will buchstaben zahlen zuweisen und umgekehrt - also a=1, b=2............
ich find keinen ansatz..wäre echt nett wenn mir jemand helfen könnte
mit besten dank an alle imvoraus
marco
Moderiert von
Peter Lustig: Topic verschoben
patrick - Mi 10.03.04 21:11
muss es sich dabei um eine bestimmte zahl handeln?
wenn es keine speziellen zahlen sein sollen kannst du die ascii zeichennummer benutzen:
und so gehts:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| var zahl:integer; begin ... zahl:=ord('z') ... |
in diesem fall hätte die variable zahl den wert 122
read - Mi 10.03.04 21:16
hallo patrick
ersteinmal danke für die schnelle antwort
also es sollten schon genaue zuweisungen sein...eigentlich will ich damit ne zurodnung des morsealphabets machen
die frage hatte ich halt so allgemein gehalten, weil ich dacht das es egal ist ob ich sage a='1', oder ob ich sage a='.-'
mfg
marco
Loryn - Mi 10.03.04 22:10
Wie wäre es hiermit:
Delphi-Quelltext
1: 2:
| const MorseArray: array['a'..'z'] of String = ('.-','.--','.---', usw....); |
MorseArray musst du natürlich mit den richtigen Strings füllen. Um jetzt einen Buchstaben in den Morsecode zu wandeln benutzt du nachfolgende Funktion CharToMorse.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| function CharToMorse(aChar: Char): String; begin if aChar in ['a'..'z'] then Result := MorseArray[aChar] else Result := ''; end; |
Gruß Loryn
read - Mi 10.03.04 22:13
danke, werde es gleich mal ausprobieren :D
marco
read - Do 11.03.04 14:57
hi loryn
hab mal deinen code probiert....aber ich glaub ich mach was falsch :oops:
ich will in memo1 den klartext eingeben, und im memo2 soll dat ganze als morsezeichen dargestellt werden
das mit dem gleichzeitigen darstellen klappt....aber nicht als morsezeichen wenn ich die function aufrufe bleibt memo2 leer
hier mal der code bis jetzt
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: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39:
| function CharToMorse(aChar: Char): String; const MorseArray: array['a'..'z'] of String=('.-','-...','-.-','-..','.','..-.', '--.','....','..','.---','-.-','.-..','--','-.','---','.--.','--.-','.-.', '...','-','..-','...-','.--','-..-','-.--','--..');
begin if aChar in ['a'..'z'] then begin Result := MorseArray[aChar] end else begin Result := ''; end; end;
procedure TForm1.Button1Click(Sender: TObject); begin form1.Close; end;
procedure TForm1.FormCreate(Sender: TObject); begin memo1.Clear; memo2.Clear; end;
procedure TForm1.Memo1Change(Sender: TObject); var achar: char; begin memo2.Lines := memo1.lines; if memo1.text<>'' then memo2.text := CharToMorse(achar); end;
end. |
wenn du da den fehler findest, könntest du mir vielleicht helfen?
gruß
marco
Moderiert von
Peter Lustig: Code- durch Delphi-Tags ersetzt
Loryn - Do 11.03.04 15:59
Hallo marco,
Dein Problem liegt hier:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure TForm1.Memo1Change(Sender: TObject); var achar: char; begin memo2.Lines := memo1.lines; if memo1.text<>'' then memo2.text := CharToMorse(achar); end |
aChar hat einen zufälligen Inhalt, da aChar nichts zugewiesen wurde.
Ausserdem sollte man von einem String und nicht von einem einzelnen Zeichen in memo1.text ausgehen.
Dann wäre folgendes zu tun:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TForm1.Memo1Change(Sender: TObject); var S, MorseS: String; begin S := memo1.Text; memo2.Clear; MorseS := ''; for i := 1 to Length(S) do MorseS := MorseS+CharToMorse(S[i]); memo2.Text := MorseS; end; |
Ich habe es nicht ausprobiert, aber es müsste gehen.
Gruß Loryn
iGoA - Fr 12.03.04 12:34
Mal ne allgemeine Frage zum Morsecode:
Wenn ich mir das Gepiepe anhöre, woher weiß ich, wann ein Buchstabe aufhört bzw. ein neuer Anfäng, wenn ich den Anfang verpasst habe?
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!