Medzinárodná Morseova abeceda

Medzinárodná Morseova abeceda [vyslov: morzeova] (iné názvy: Morseova abeceda, Morsova abecedaV PSP je síce (pre výslovnosť mórs) kodifikovaný tvar Morseova, ale tento tvar technicky protirečí štandardným pravopisným pravidlám, podľa ktorých koncové nemé e v cudzích menách vypadáva (správny tvar Morsova je uvedený napríklad vo Veľkom slovníku cudzích slov)., Morseova telegrafická abeceda, Morseho abeceda [vyslov: morzeho], hovorovo morzeovka) je sústava telegrafných signálov zodpovedajúcich písmenám, čísliciam a iným znakom, ktoré sa používajú pri písaní. V grafickom vyjadrení je to sústava bodiek a čiarok, časovo bodka predstavuje krátky signál a čiarka dlhý signál. Autorom abecedy je Samuel Finley Breese Morse.

 Latinské písmenápísmenokódpomôckaAagátBblýskavicaCcíferský cechDdiaľavaEerbFfiliálkaGgnómónyHhrachovinaIibisJjazmín vám dámKkúpenýLlajdáčiskoMmieriaNnárodOó ó ó Ppalác pánaQkvíz hráva sámRrarášokSsobotaTtónUučenýVvyvolenýWweb mám rádXXéniu známYý maž bárčímZzólógia číslačíslokód1234567890 špeciálne znakyznakkódÀ, ÅÄÈÉÖÜßCHÑ. (AAA), (MIM):;? (IMI) -()'= +/@ (AC) SignályznakkódKA(začiatok vysielania)BT(pauza)AR(koniec vysielania)VE(rozumiem)SK(koniec komunikácie)SOS(medzinárodné  volanie o pomoc na mori) IRRUNG(opakovanie  od posledného  správneho slova)

 T M O Ch 0 / 9 Ö 8 G Q Ñ Z 7 N K Y C D X B 6 E A W J 1 / ' P R Ä L I U Ü 2 F S V 3 H 4 / 5

 Program v C# 

using System;

namespace x30x12x2021
{
    internal class Program
    {
        static void Main()
        {
            while (true)
            {
                Console.WriteLine("Zadejte text určený pre prevod:");
                string line = Console.ReadLine();
                if (string.IsNullOrEmpty(line)) break;
                else
                {
                    Console.WriteLine();

                    if (line[0] == '.' || line[0] == '-') //bola zadána Morseova ábeceda?
                    {
                        string[] vs = line.Split(' ', StringSplitOptions.RemoveEmptyEntries); //medzery v Morseovke

                        for (int i = 0; i < vs.Length; i++)
                        {
                            Console.Write(Morse.DecodeMorseCode(vs[i]));
                        }
                    }
                    else //nebola zadána Morseovka, pracujem s textom
                    {
                        for (int i = 0; i < line.Length; i++)
                        {
                            Console.Write(Morse.EncodeToMorseCode(line[i]));
                            Console.Write(" "); //oddelovač
                        }
                    }

                    Console.WriteLine();
                }
            }
        }
    }

    static class Morse
    {
        #region ONLY READ
        private static readonly string[,] MorseCodes = new string[,]
            {
                {"A" , ".-"},
                {"B" , "-..."},
                {"C" , "-.-."},
                {"D" , "-.."},
                {"E" , "."},
                {"F" , "..-."},
                {"G" , "--."},
                {"H" , "...."},
                {"I" , ".."},
                {"J" , ".---"},
                {"K" , "-.-"},
                {"L" , ".-.."},
                {"M" , "--"},
                {"N" , "-."},
                {"O" , "---"},
                {"P" , ".--."},
                {"Q" , "--.-"},
                {"R" , ".-."},
                {"S" , "..."},
                {"T" , "-"},
                {"U" , "..-"},
                {"V" , "...-"},
                {"W" , ".--"},
                {"X" , "-..-"},
                {"Y" , "-.--"},
                {"Z" , "--.."},
                {"0" , "-----"},
                {"1" , ".----"},
                {"2" , "..---"},
                {"3" , "...--"},
                {"4" , "....-"},
                {"5" , "....."},
                {"6" , "-...."},
                {"7" , "--..."},
                {"8" , "---.."},
                {"9" , "----."}
            };
        #endregion
        public static string EncodeToMorseCode(char c)
        {
            var uc = char.ToUpper(c);
            int len = MorseCodes.GetLength(0);
            for (int i = 0; i < len; i++)
            {
                if (uc == MorseCodes[i, 0][0]) return MorseCodes[i, 1];
            }
            return uc.ToString();
        }

        public static string DecodeMorseCode(string m)
        {
            int len = MorseCodes.GetLength(0);
            for (int i = 0; i < len; i++)
            {
                if (m == MorseCodes[i, 1]) return MorseCodes[i, 0];
            }
            return "?";
        }
    }
}

 Pozri aj 
 telegraf

 Poznámka 

Kategória:Telegrafia
Kategória:Abecedy

Morseova abeceda