Zdravím, jak by podle vás vypadal program, jenž má převádět větu ze znaků (pismen a cislic) do morseovky?
Fórum › Pascal
Morseovka
Jak by vypadal? Mno, přijímal byl řetězec znaků,ten by rozparsoval na jednotlivé znaky a pak by je nahradil určitým seskupením teček a čárek,který bys měl třeba někde uložené (ve "slovníku"):)
Chrasty napsal:
Jak by vypadal? Mno, přijímal byl řetězec znaků,ten by rozparsoval na jednotlivé znaky a pak by je nahradil určitým seskupením teček a čárek,který bys měl třeba někde uložené (ve "slovníku"):)
Jistě, to mě taky napadlo ale jak by to vypadalo v praxi? :)
Zdrojovy kod si napis sam ;)Anonymní uživatel napsal:
Chrasty napsal:
Jak by vypadal? Mno, přijímal byl řetězec znaků,ten by rozparsoval na jednotlivé znaky a pak by je nahradil určitým seskupením teček a čárek,který bys měl třeba někde uložené (ve "slovníku"):)
Jistě, to mě taky napadlo ale jak by to vypadalo v praxi? :)
Hint: SWITCH is the KEYWORD
V const pole stringů s indexy 'a'..'z' a obsahem '.-' až '--..' . V cyklu projedeš zadaný řetězec písmeno po písmenu, každé použiješ jako index toho pole a na obrazovku vypíšeš přímo string z té pozice.
V praxi readln, write, writeln, for, var, const, begin a end ;-).
Moje stránka.
Viděl jsem převod textu do morseovky napsanej v brainfucku. To je aspoň úkol! :-D
Ahoj já bych potřeboval udělat zdroják v kterym by byla napsaná morseovka z pismen do morseovky a naopak a musí tam být použitá buď procedura nebo funkce a menu:( já sem začátečník a lámu si s tim hlavu a nevim jak to udělat...:( prosim udělejte mi to někdo(ten zdroják:D )
Převod z písmen na morseovku se řeší o pár řádků výš.
S obráceným převodem jsem si nedávno hrál :-). Dá se to docela elegantně udělat pomocí stromu, který implementuješ jako pole:
const pismena:array[1..31]of char=('HSVIFU?ELR?APWJ BDXNCKYTZGQM?O_');
(místo podtržítka má být CH, ale to mi nevychází do charu. Otazníky jsou neexistující kombinace)
Inicializace:
index:=16; {pozice mezery}
krok:=8;
Cyklus pro každý znak vstupu:
- Načti jeden znak.
- Pokud je to oddělovač, tak begin write(pismena[index]); index:=16; krok:=8; end;
- Pokud je to tečka, tak begin dec(index,krok); krok:=krok div 2; end;
- Pokud je to čárka, tak begin inc(index,krok); krok:=krok div 2; end;
- Pokud je to nějaký jiný znak, nahlaš chybu a skonči.
Na konci máš na obrazovce vypsaný překlad morseovky do textu.
Moje stránka.
Jo morseovku jsem uz pred davnou dobou taky nejak delal, ale mam to bohužel jen v pythonu(pascal neumim) myslim ale, že se to z toho dá vcelku pochopit.
Mohl by tam byt problem s tim, ze python ma slovniky, ale to uz myslim takovej problem do nejakyho pole prevest neni.
Ještě je tam myslim problem s převodem do textu, ze to nedrzi standard těch /// v morseovce a nejsou tam cisla
Omlouvám se za primitivnost toho kodu, ale je to opravdu velmi stare
To je preklad na morseovku
out = ""
try:
inputText = raw_input("Zdrojovy text: ").lower()
for i in range(len(inputText)):
out += self.dictTextMorse[inputText[i]]
out += "/"
out += "//"
print out
out = ""
except:
print u"Chyba v překladu"
preklad.cyklProgramu()
Toto je morse na text
counter = 0
pauser = 0
codem = ""
outText = ""
#try:
inputMorse = raw_input("Morse kod: ")
for i in range(len(inputMorse)):
if inputMorse[i] == "/" or inputMorse[i] == "//" or inputMorse[i] == "///":
for j in range(pauser):
codem += inputMorse[j+(counter-pauser)]
outText += self.dictMorseText[codem]
codem = ""
pauser = 0
else:
pauser += 1
counter += 1
print outText
#except:
# print u"Chyba v překladu"
preklad.cyklProgramu()
Nevim jestli to je k něčemu, ale nějak to funguje. ty slovníky nepřikládám, ty jsou myslim jasný "a":".-".....
Zdarec, konečně jsem našla místo, kde mi může někdo helpnout :smile1:
Ve škole v informatice jsme od začátku roku probírali programování. A teď jsme dostali úkol: Vyber si nějaký program (měli jsme na výběr z morseovky, výukového programu, fyzikálních a matematických vzorců atd.) a ten do dvou týdnů udělej a dones do školy... Vybrala jsem si teda morseovku... A k ní mi bylo řečeno, že má převádět i celé věty...
Tak trochu jsem smysl programování v Pascalu pochopila, ale udělat nějaký program (myslím všeobecně) se mi jevilo jako nadlidský úkol... :smile13:
Chtěla bych vás poprosit, jesli byste mi někdo program s morseovkou nenapsal (myslím jako ten zápis, který budu muset opsat do programu Turbo Pascal :smile3: )
Byla bych vám hrozně moc vděčná, kdybyste mi to někdo udělal... Děkuju předem :smile1:
To Anet : Aby bylo jasno, tohle fórum není určeno k tomu, aby se tu za kohokoli psaly domácí úkoly (i když to samozřejmě není zakázané). V optimálním případě by to tu mělo probíhat tak, že někdo se na něco zeptá a ostatní mu to vysvětlí tak, že to pochopí a příslušný úkol napíše sám a z diskuse potom budou mít užitek všichni ostatní, co přijdou později se stejným problémem.
Jestli jste, jak píšeš, celý rok probírali programování a doteďka je pro tebe nadlidský úkol napsat všeobecně jakýkoli program, zřejmě jsi celou tu dobu ve škole spala a na úspěšné zakončení předmětu IMHO nemáš nárok (tu známku máš dostat ty, ne my).
Chápu, že to zní dost drsně (neber to prosím jako útok na tebe nebo tak něco). Taky jsem někdy začínal. A i mě pár lidí poslalo přečíst si nějakou učebnici pro začátečníky a nenechávat za sebe pracovat ostatní.
Moje stránka.
To Mircosoft : A co ty víš třeba mně se to líbí, vysvětlovat to lidem osobně, učit je to ve své volné chvíli. Takováto privátní komunikace ti asi nic moc neřiká. Tohle může být ideální příležitost jak začít, nemusí být vše podle tvých not a fórum se utváří lidmi co do něj píší a ne tvými pravidly nebo pravidly správce, tomu nezabráníš předem, můžeš brblat až po té. Až teď :D
To nejsou moje pravidla ;-). Privátní komunikaci ve volném čase používám samozřejmě taky, ale ne na fórech - tam by se mělo všechno řešit veřejně, aby z toho mělo užitek co nejvíc lidí a aby se tady stejné otázky bez odpovědí netočily pořád dokola.
Zakazovat ti to ale samozřejmě nechci a nemůžu ani já, ani kdokoli jiný.
Howgh.
Moje stránka.
To Mircosoft : Moc se mi to nezdá, houževnatě ses tu pustil do bránění
kázně na fóru a ejhle ZROVNA u něčeho co
tu bylo omýýýlané milionkrát. Proč? Z tvého předposledního příspěvku čiší nepřehlédnutelné opření se na kohosi egu,
nebo snad jakýchsi velmi starých splátkách.
Tím jsi ve svém gongoristickém rozpoložení
tato pravidla bohužel povýšil jen na k dokonalosti střižený autochtonní prvek sekty,
nic víc.
To o-lox : Plne súhlasím s Mircosoftom, to že sa tu za ľudí nepíšu domáce úlohy tu už má určitú tradíciu a nie je to blud žiadnej pomätenej hlavy. To že to dostali za úlohu asi znamená že sa to majú naučiť a ja akosi nechápem ako to chcú dostať do hlavy tým že im to niekto napíše za nich. Na tomto fóre je dosť ľudí ochotných pomôcť aj začiatočníkovi, ale slušnosť káže aspoň prejaviť nejakú snahu niečo stvoriť, alebo sa o to aspoň pokúsiť a nie skopírovať celý zdroják od niekoho koho to určite stálo nejaký ten čas. Ak to niekto chce bez námahy tak mu kľudne stačilo použiť Google. Ak to chce legálne nech sa pousiluje, niečo si o tom naštuduje, potom tu hodí nejaký ten zdroják a myslím že ho k tomu už dokopeme.
Tak dobrá napíšu to tu natvrdo a ještě otevřeněji,
(a pro někoho asi nezkousnutelně a nehorázně :( ),
mně v tomto (nebo dalších podobných) případě šlo (a půjde vždy výhradně)
pouze a jenom o pokus (dalo by se to rozepsat i jako hra na s -- ale opravdu
to tu musím polopaticky vypisovat? :D ) o seznámení, OK?
V Pedagogickém hájemství nebo jak to kriste napsat.
A styl Microsoftova zaslepeného mravokárnění se mi silně nezamlouval, zavání
to jakýmsi fanatickým,patetickým dodržováním něčeho "správného" (příp. reinkarnací starých pravd)
navíc zde bez jakéhokoliv logického smyslu (viz. nademnou dořešené odpovědi).
Ano seznamování moc na fórum nepatří, zřetelně je to ale vyjímka na desítky
běžných textů, a dle mě lidské oživení!
Tímto tuto diskuzi bude vhodné uzavřít, odlišné názory už slyšet nemusím, děkuji.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Morseovka do souboru — založil hejnallukas
Morseovka - Jak na to? — založil Dumbo
Morseovka v Javě — založil blondyna
Moderátoři diskuze