Tokie skaitytojai kaip jūs padeda palaikyti MUO. Kai perkate naudodami nuorodas mūsų svetainėje, galime uždirbti filialų komisinius. Skaityti daugiau.

Morzės abėcėlė egzistavo nuo 1800-ųjų pradžios ir atėjo į skaitmeninę erą. Morzės abėcėlė yra svarbi komunikacijos priemonė per Antrąjį pasaulinį karą iki šifruotų pranešimų siuntimo aviacijoje ir jūroje.

Jei nežinote šios įdomios kalbos, pasiruoškite ne tik atrasti Morzės kodą, bet ir sukurti savo vertėją naudodami Python.

Kas yra Morzės kodas?

Morzės abėcėlė yra komunikacijos būdas, kai užkoduojate teksto simbolius į standartinę dviejų skirtingos trukmės signalų seką, pažymėtą taškais ir brūkšneliais. Morzės abėcėlė gavo savo pavadinimą iš Samuelio Morse, vieno iš telegrafo išradėjų. Galite jį įsiminti ir perduoti garso bangomis arba matoma šviesa, suvokiama žmogaus pojūčiais.

Morzės abėcėlės atitikmens ilgis yra atvirkštinis mūsų tos abėcėlės naudojimo dažniui, ir matote, kad Morzės abėcėlė labiausiai paplitusią anglų kalbos raidę E priskiria tik taškui.

instagram viewer

Galite naudoti šiuos nemokama Morzės kodo programinė įranga ir programėlės koduotiems pranešimams siųsti vienas kitam. Kita vertus, išmokti Morzės abėcėlės yra gana paprasta, ir jūs galite išmokti jį per mėnesį pakankamai praktikuodami. Norėdami padėti jums pradėti, čia yra devynios svetainės, kuriose galima išmokti Morzės kodą nemokamai.

Kaip sukurti Morzės kodo vertėją naudojant Python

Pradėkite apibrėždami Python žodyną pavadinimu MORSE_CODE_DICT Morzės kodo reikšmėms išsaugoti. Klavišai bus angliškos abėcėlės raidės su atitinkama taškų arba brūkšnių seka kaip atitinkama reikšmė. Naudodami žodyną galite greitai surasti bet kurį atitinkamą raktą.

MORSE_CODE_DICT = { "A":'.-', "B":'-...',
"C":'-.-.', "D":'-..', "E":'.',
"F":'..-.', "G":'--.', "H":'...',
"aš":'..', "J":'.', "K":'-.-',
"L":'.-..', "M":'--', 'N':'-.',
'o':'', "P":'.--.', 'Q':'--.-',
"R":'.-.', "S":'...', "T":'-',
'u':'..-', "V":'...-', "W":'.--',
"X":'-..-', 'Y':'-.--', "Z":'--..',
'1':'.', '2':'..', '3':'...--',
'4':'...-', '5':'...', '6':'-...',
'7':'--...', '8':'..', '9':'.',
'0':'', ', ':'--..--', '.':'.-.-.-',
'?':'..--..', '/':'-..-.', '-':'-...-',
'(':'-.--.', ')':'-.--.-' }

Paskelbkite funkciją, pavadintą šifruoti, kuri priima žinutę kaip įvesties parametras. Funkcijos viduje inicijuokite kintamąjį pavadinimu šifras su tuščia eilute. Tai naudosite kurdami ir saugodami užšifruotą pranešimą. Tada paskelbkite for kilpą, kuri kartojasi per kiekvieną laiško raidę.

Jei raidė nėra tarpas, perduokite ją į žodyną, kad galėtumėte ieškoti. Žodynas grąžina atitinkamą Daugiau kodo reikšmę pagal raktą. Pridėkite tarpą, kad atskirtumėte Morzės abėcėlės simbolius, ir naudokite trumpinį += operatorių, kad sujungtumėte jį su kodu, gautu iš žodyno. Jei raidė yra tarpas, pridėkite papildomą tarpą prie šifro; Morzės kodas atskiria žodžius dviem tarpais iš eilės.

defužšifruoti(žinutė):
šifras = ""
už laišką žinute:
jeigu raidė != " ":
šifras += MORSE_CODE_DICT[raidė] + " "
Kitas:
šifras += " "
grąžinti šifras

Paskelbkite funkciją, pavadintą iššifruoti, kuri priima žinutę kaip įvesties parametras. Pabaigoje pridėkite tarpą, naudodami trumpąjį operatorių, kad pasiektumėte paskutinį Morzės abėcėlės simbolį. Inicijuokite du kintamuosius, iššifruokite ir cittekstas laikyti tuščias stygas. Iššifruotame kintamajame bus iššifruotas sakinys, sudarytas iš anglų kalbos abėcėlės, o naudodami cittekstą saugosite kiekvieną Morzės kodo raidę.

Pakartokite for kilpą, kuri eina per kiekvieną Morzės kodo raidę. Jei raidė nėra tarpas, inicijuokite skaitiklio kintamąjį i, kuris seka tarpų skaičių iki nulio ir išsaugo vieno simbolio Morzės kodą cittekste. Kitu atveju raidė yra tarpas, todėl skaitiklį padidinkite vienu.

Jei skaitiklis yra lygus dviem, tai reiškia, kad turite pridėti tarpą prie iššifruoto žodžio kintamojo iššifravimo. Kitu atveju pasiekite raktus naudodami jų reikšmes. Norėdami tai padaryti, kartokite raktų ir reikšmių poras žodyne naudodami elementų funkciją. Jei cittekstas yra lygus reikšmei, pridėkite atitinkamą raktą prie iššifravimo kintamojo, naudodami sutrumpinimo operatorių.

Galiausiai išvalykite cittekstą, kad gautumėte kitą raidę, ir grąžinkite gautą iššifruotą sakinį į funkcijos iškvietimą.

defiššifruoti(žinutė):
žinutė += " "
iššifruoti = ""
cittekstas = ""

už laišką žinute:
jeigu raidė != " ":
i = 0
cittekstas += raidė
Kitas:
i += 1

jei i == 2:
iššifruoti += " "
Kitas:
dėlRaktas, vertėinMORSE_CODE_DICT.elementai():
jei cittekstas == reikšmė:
iššifruoti += klavišą

cittekstas = ""

grąžinti iššifruoti

Išbandykite funkcijas naudodami pavyzdinę įvestį. Pradėkite inicijuodami kintamąjį pavadinimu žinutę su žodžiu ar sakiniu, kurį norite užšifruoti. Naudoti viršutinė funkcija konvertuoti visas raides į didžiąsias ir perduoti ją šifravimo funkcijai kaip argumentą. Morzės kodą sudaro tik didžiosios raidės, kurios yra žodyno klavišai. Tai taip pat padeda išvengti bereikalingų vykdymo laiko patikrinimų, ar nėra tinkamo atvejo.

Išspausdinkite gautą reikšmę, kad pamatytumėte originalaus sakinio Morzės kodo atitikmenį.

Tada išsaugokite Morzės kodą pranešimo kintamajame ir perduokite jį iššifravimo funkcijai. Išspausdinkite rezultatą ir patikrinkite, ar jis teisingas.

Užuot kodinę įvestį, galite ją priimti iš vartotojo naudodami įvestis () funkcija.

žinutė = "Pasinaudoti"
rezultatas = šifruoti (message.upper())
spausdinti(rezultatas)

žinutė = "-- .- -.-. ..-.... ..-."
rezultatas = iššifruoti (pranešimas)
spausdinti(rezultatas)

Morzės kodo vertėjo išvestis Python

„Python“ programa išverčia kiekvieną anglų abėcėlės raidę į Morzės kodo atitikmenį ir parodo ją terminalo išvesties ekrane, kaip parodyta. Jei nukopijuosite gautą išvestį ir perduosite ją iššifruoti, gausite originalų tekstą, kurį perdavėte anksčiau. Tai patvirtina, kad vertimas veikė puikiai.

Mobiliosios Morzės kodo programos

Morzės abėcėlės vertėjai yra prieinami nemokamai, po ranka. Įvairiose platformose yra daugiau nei šimtai programų, tokių kaip Morzės manija, Morzės treniruoklis, Morzės kodo skaitytuvas, Morzės kodo klaviatūra ir Morzės kodo vertėjas. Jūsų nuostabai, ją palaiko net „GBoard“ – „Google“ klaviatūra.

Norėdami pasiekti Morzės kodą „Gboard“, atidarykite „Gboard“ nustatymų piktogramą, pasirinkite Kalbos ir bakstelėkite Anglų (JAV). Braukite dešinėn per parinktis, tada pasirinkite Morzės kodas. Jūsų klaviatūra dabar palaiko Morzės kodo įterpimą kartu su pritaikymo neįgaliesiems paslaugomis, pvz., „TalkBack“, prieiga jungikliu arba „Select to Speak“.