RGAlex

O4. Morse Code Translator / Text Processing - More Exercise

Mar 15th, 2021
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.50 KB | None | 0 0
  1. package TextPlocessing.MoreExercises;
  2.  
  3. import java.util.HashMap;
  4. import java.util.Map;
  5. import java.util.Scanner;
  6.  
  7. public class O4MorseCodeTranslator {
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.         Map<String, String> morse = new HashMap<>() {{
  11.             put(".-", "A");
  12.             put("-...", "B");
  13.             put("-.-.", "C");
  14.             put("-..", "D");
  15.             put(".", "E");
  16.             put("..-.", "F");
  17.             put("--.", "G");
  18.             put("....", "H");
  19.             put("..", "I");
  20.             put(".---", "J");
  21.             put("-.-", "K");
  22.             put(".-..", "L");
  23.             put("--", "M");
  24.             put("-.", "N");
  25.             put("---", "O");
  26.             put(".--.", "P");
  27.             put("--.-", "Q");
  28.             put(".-.", "R");
  29.             put("...", "S");
  30.             put("-", "T");
  31.             put("..-", "U");
  32.             put("...-", "V");
  33.             put(".--", "W");
  34.             put("-..-", "X");
  35.             put("-.--", "Y");
  36.             put("--..", "Z");
  37.         }};
  38.         String[] input = scanner.nextLine().split("\\s+\\|\\s+");
  39.  
  40.         for (String s : input) {
  41.             StringBuilder output = new StringBuilder();
  42.             String[] splitInput = s.split("\\s+");
  43.             for (String a : splitInput) {
  44.                 String toAppend = morse.get(a);
  45.                 output.append(toAppend);
  46.             }
  47.             System.out.printf("%s ", output);
  48.         }
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment