program v delphi
-
miska.myska
Amateur
- Príspevky: 10
- Registrovaný: 26 júl 2008, 10:03
program v delphi
Ahojte, potrebovala by som pomoc s jednym programom v delphi. Mojou ulohou je , ze mam zadat slovo a to slovo mi prekonvertuje do morseovky a to tak ze vypise znaky medzi kazdym by mala byt medzera a este aby vypisalo aj slabiky teda napr
priklad vstupu : sos
priklad vystupu : ... --- ...
a este vypise ze, ti-ti-ti tá-tá-tá ti-ti-ti
Prosim vedeli by ste pomoct?
priklad vstupu : sos
priklad vystupu : ... --- ...
a este vypise ze, ti-ti-ti tá-tá-tá ti-ti-ti
Prosim vedeli by ste pomoct?
-
neutronmind
Expert
- Príspevky: 189
- Registrovaný: 05 aug 2008, 14:17
Ved len porovnavaj znaky zadaneho retazca pomocou case a vypisuj ekvivalentne znacky v morzeovke, ako tu http://www.hojko.com/mozreovka-v-c-projekt-t107583.html
-
miska.myska
Amateur
- Príspevky: 10
- Registrovaný: 26 júl 2008, 10:03
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
-
miska.myska
Amateur
- Príspevky: 10
- Registrovaný: 26 júl 2008, 10:03
Kód: Vybrať všetko
procedure TForm1.Button1Click(Sender: TObject);
var vstup:string;
begin
vstup:=Edit1.text;
case vstup of
'a':Edit2.text:='.- ' + Edit3.text:='ti-tá';
'b':Edit2.text:='-... '+ Edit3.text:='tá-ti-ti-ti ';
'c':Edit2.text:='-.-. '+ Edit3.text:='tá-ti-tá-ti ';
'd':Edit2.text:='-.. '+ Edit3.text:='tá-ti-ti ';
'e':Edit2.text:='. '+ Edit3.text:='ti ';
'f':Edit2.text:='..-. '+ Edit3.text:='ti-ti-tá-ti ';
'g':Edit2.text:='--. '+ Edit3.text:='tá-tá-ti ';
'h':Edit2.text:='.... '+ Edit3.text:='ti-ti-ti-ti ';
'i':Edit2.text:='.. '+ Edit3.text:='ti-ti ';
'j':Edit2.text:='.--- '+ Edit3.text:='ti-tá-tá-tá ';
'k':Edit2.text:='-.- '+ Edit3.text:='tá-ti-tá ';
'l':Edit2.text:='.-.. '+ Edit3.text:='ti-tá-ti-ti ';
'm':Edit2.text:='-- '+ Edit3.text:='tá-tá ';
'n':Edit2.text:='-. '+ Edit3.text:='tá-ti ';
'o':Edit2.text:='--- '+ Edit3.text:='tá-tá-tá ';
'p':Edit2.text:='.--. '+ Edit3.text:='ti-tá-tá-ti ';
'q':Edit2.text:='--.- '+ Edit3.text:='tá-tá-ti-tá ';
'r':Edit2.text:='.-. '+ Edit3.text:='ti-tá-ti ';
's':Edit2.text:='... '+ Edit3.text:='ti-ti-ti ';
't':Edit2.text:='- '+ Edit3.text:='tá ';
'u':Edit2.text:='..- '+ Edit3.text:='ti-ti-tá ';
'v':Edit2.text:='...- '+ Edit3.text:='ti-ti-ti-tá ';
'w':Edit2.text:='.-- '+ Edit3.text:='ti-tá-tá ';
'x':Edit2.text:='-..- '+ Edit3.text:='tá-ti-ti-tá ';
'y':Edit2.text:='-.-- '+ Edit3.text:='tá-ti-tá-tá ';
'z':Edit2.text:='--.. '+ Edit3.text:='tá-tá-ti-ti ';
end;
end;
end.-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
nooo vidíš aká si šikovná 
skoro, až na toto: čo je dosť velká kravina. Musíš to dať na dva príkazy
ďalej na začiatku budeš musieť edit2 aj edit3 zmazať, inak sa ti pri druhom pokuse bude nabalovať na predchádzajúci, a celé to bude musieť byť v cykle aby sa to robilo pre každé písmeno. Deklaruješ si i:integer; a potom to bude nejak takto:
for i:=1 to length(vstup) do ....
čiže nejak takto (ostatné písmena si dorob analogicky):
neskúšal som to, ale malo by to ísť. Ak nie, tak napíš
skoro, až na toto:
Kód: Vybrať všetko
'a':Edit2.text:='.- ' + Edit3.text:='ti-tá'; Kód: Vybrať všetko
'a': begin
Edit2.text:=Edit2.text+'.- ';
Edit3.text:=Edit3.text+'ti-tá';
end; for i:=1 to length(vstup) do ....
čiže nejak takto (ostatné písmena si dorob analogicky):
Kód: Vybrať všetko
procedure TForm1.Button1Click(Sender: TObject);
var vstup:string;
i:integer;
begin
vstup:=Edit1.text;
edit3.clear;
edit2.clear;
for i:=1 to length(vstup) do begin
case vstup[i] of
'a': begin
Edit2.text:=Edit2.text+'.- ';
Edit3.text:=Edit3.text+'ti-tá';
end;
end;
end;
end;
-
miska.myska
Amateur
- Príspevky: 10
- Registrovaný: 26 júl 2008, 10:03
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
-
miska.myska
Amateur
- Príspevky: 10
- Registrovaný: 26 júl 2008, 10:03