Normantas

Char/String to Morse Converter

Jan 21st, 2021 (edited)
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.32 KB | None | 0 0
  1. string morse(char letter)
  2. {
  3.     /// Takes 1 char and returns a morse equivelent
  4.     /// or the same letter
  5.     /// O = 1/Constant;
  6.  
  7.     int asciiValue = letter;
  8.     if(asciiValue >= 97 && asciiValue <= 122) // Converts Letter to Uppercase
  9.         letter = asciiValue - 32;
  10.  
  11.     switch(letter) // Returns Morse
  12.     {
  13.         case 'A':
  14.             return "*-";
  15.             break;
  16.         case 'B':
  17.             return "-***";
  18.             break;
  19.         case 'C':
  20.             return "-*-*";
  21.             break;
  22.         case 'D':
  23.             return "-**";
  24.             break;
  25.         case 'E':
  26.             return "*";
  27.             break;
  28.         case 'F':
  29.             return "**-*";
  30.             break;
  31.         case 'G':
  32.             return "--*";
  33.             break;
  34.         case 'H':
  35.             return "****";
  36.             break;
  37.         case 'I':
  38.             return "**";
  39.             break;
  40.         case 'J':
  41.             return "*---";
  42.             break;
  43.         case 'K':
  44.             return "-*-";
  45.             break;
  46.         case 'L':
  47.             return "*-**";
  48.             break;
  49.         case 'M':
  50.             return "--";
  51.             break;
  52.         case 'N':
  53.             return "-*";
  54.             break;
  55.         case 'O':
  56.             return "---";
  57.             break;
  58.         case 'P':
  59.             return "*--*";
  60.             break;
  61.         case 'Q':
  62.             return "--*-";
  63.             break;
  64.         case 'R':
  65.             return "*-*";
  66.             break;
  67.         case 'S':
  68.             return "***";
  69.             break;
  70.         case 'T':
  71.             return "-";
  72.             break;
  73.         case 'U':
  74.             return "*--";
  75.             break;
  76.         case 'V':
  77.             return "***-";
  78.             break;
  79.         case 'W':
  80.             return "*--";
  81.             break;
  82.         case 'X':
  83.             return "-**-";
  84.             break;
  85.         case 'Y':
  86.             return "-*--";
  87.             break;
  88.         case 'Z':
  89.             return "--**";
  90.             break;
  91.         default:
  92.             string output{letter};
  93.             return output;
  94.             break;
  95.     }
  96.  
  97.     string output{letter};
  98.     return output;
  99. }
  100. string morse(string letter)
  101. {
  102.     /// Overloaded method when the input is a string
  103.     /// Returns morse only of the FIRST letter
  104.     return morse(letter[0]);
  105. }
Add Comment
Please, Sign In to add comment