-
Notifications
You must be signed in to change notification settings - Fork 0
/
Morse.java
126 lines (121 loc) · 6.21 KB
/
Morse.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/*H****************************************************************
* FILENAME : Morse.java
*
* DESCRIPTION :
* Encrypts and decrpyts text using Morse cipher
*
* Copyright 2019, Jacob Wilkins. All rights reserved.
*
* AUTHOR : Jacob Wilkins START DATE : 6 Jun 19
*
*H*/
public class Morse {
public static String Morse_encrypt(String text) {
text = text.toLowerCase();
String result = "";
for (int i = 0; i < text.length(); i++) {
char character = text.charAt(i);
if (character == 'a') { result = result + ".- "; }
else if (character == 'b') { result = result + "-... "; }
else if (character == 'c') { result = result + "-.-. "; }
else if (character == 'd') { result = result + "-.. "; }
else if (character == 'e') { result = result + ". "; }
else if (character == 'f') { result = result + "..-. "; }
else if (character == 'g') { result = result + "--. "; }
else if (character == 'h') { result = result + ".... "; }
else if (character == 'i') { result = result + ".. "; }
else if (character == 'j') { result = result + ".--- "; }
else if (character == 'k') { result = result + "-.- "; }
else if (character == 'l') { result = result + ".-.. "; }
else if (character == 'm') { result = result + "-- "; }
else if (character == 'n') { result = result + "-. "; }
else if (character == 'o') { result = result + "--- "; }
else if (character == 'p') { result = result + ".--. "; }
else if (character == 'q') { result = result + "--.- "; }
else if (character == 'r') { result = result + ".-. "; }
else if (character == 's') { result = result + "... "; }
else if (character == 't') { result = result + "- "; }
else if (character == 'u') { result = result + "..- "; }
else if (character == 'v') { result = result + "...- "; }
else if (character == 'w') { result = result + ".-- "; }
else if (character == 'x') { result = result + "-..- "; }
else if (character == 'y') { result = result + "-.-- "; }
else if (character == 'z') { result = result + "--.. "; }
else if (character == '.') { result = result + ".-.-.- "; }
else if (character == ',') { result = result + "--..-- "; }
else if (character == '?') { result = result + "..--.. "; }
else if (character == '\'') { result = result + ".----. "; }
else if (character == '!') { result = result + "-.-.-- "; }
else if (character == '/') { result = result + "-..-. "; }
else if (character == '-') { result = result + "-....- "; }
else if (character == '(') { result = result + "-.--.- "; }
else if (character == '"') { result = result + ".-..-. "; }
else if (character == '1') { result = result + ".---- "; }
else if (character == '2') { result = result + "..--- "; }
else if (character == '3') { result = result + "...-- "; }
else if (character == '4') { result = result + "....- "; }
else if (character == '5') { result = result + "..... "; }
else if (character == '6') { result = result + "-.... "; }
else if (character == '7') { result = result + "--... "; }
else if (character == '8') { result = result + "---.. "; }
else if (character == '9') { result = result + "----. "; }
else if (character == '0') { result = result + "----- "; }
else if (character == ' ') { result = result + "/ "; }
}
return result;
}
public static String Morse_decrypt(String text) {
String result = "";
String[] tokens = text.split(" ");
for (int i = 0; i < tokens.length; i++) {
String token = tokens[i];
if (token.equals(".-")) { result = result + "a"; }
else if (token.equals("-...")) { result = result + "b"; }
else if (token.equals("-.-.")) { result = result + "c"; }
else if (token.equals("-..")) { result = result + "d"; }
else if (token.equals(".")) { result = result + "e"; }
else if (token.equals("..-.")) { result = result + "f"; }
else if (token.equals("--.")) { result = result + "g"; }
else if (token.equals("....")) { result = result + "h"; }
else if (token.equals("..")) { result = result + "i"; }
else if (token.equals(".---")) { result = result + "j"; }
else if (token.equals("-.-")) { result = result + "k"; }
else if (token.equals(".-..")) { result = result + "l"; }
else if (token.equals("--")) { result = result + "m"; }
else if (token.equals("-.")) { result = result + "n"; }
else if (token.equals("---")) { result = result + "o"; }
else if (token.equals(".--.")) { result = result + "p"; }
else if (token.equals("--.-")) { result = result + "q"; }
else if (token.equals(".-.")) { result = result + "r"; }
else if (token.equals("...")) { result = result + "s"; }
else if (token.equals("-")) { result = result + "t"; }
else if (token.equals("..-")) { result = result + "u"; }
else if (token.equals("...-")) { result = result + "v"; }
else if (token.equals(".--")) { result = result + "w"; }
else if (token.equals("-..-")) { result = result + "x"; }
else if (token.equals("-.--")) { result = result + "y"; }
else if (token.equals("--..")) { result = result + "z"; }
else if (token.equals(".-.-.-")) { result = result + "."; }
else if (token.equals("--..--")) { result = result + ","; }
else if (token.equals("..--..")) { result = result + "?"; }
else if (token.equals(".----.")) { result = result + "'"; }
else if (token.equals("-.-.--")) { result = result + "!"; }
else if (token.equals("-..-.")) { result = result + "/"; }
else if (token.equals("-....-")) { result = result + "-"; }
else if (token.equals("-.--.-")) { result = result + "("; }
else if (token.equals(".-..-.")) { result = result + "\""; }
else if (token.equals(".----")) { result = result + "1"; }
else if (token.equals("..---")) { result = result + "2"; }
else if (token.equals("...--")) { result = result + "3"; }
else if (token.equals("....-")) { result = result + "4"; }
else if (token.equals(".....")) { result = result + "5"; }
else if (token.equals("-....")) { result = result + "6"; }
else if (token.equals("--...")) { result = result + "7"; }
else if (token.equals("---..")) { result = result + "8"; }
else if (token.equals("----.")) { result = result + "9"; }
else if (token.equals("-----")) { result = result + "0"; }
else if (token.equals("/")) { result = result + " "; }
}
return result;
}
}