Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download
Views: 3731
1
public class morse{
2
3
private String[] code = new String[3];
4
/*double playFunction(double x, double freq){
5
double sinValue = Math.sin(2*Math.PI*freq*x);
6
return sinValue;
7
}*/
8
9
public void morseAusgabe() {//gibt für jede buchstabe . und/oder _
10
String morse = new String();
11
String morsekette = "";
12
morse = JOptionPane.showInputDialog(null, "Gib den Text ein!");
13
for (int i = 0; i < morse.length(); i++) {
14
String zeichen = morse.substring(i, i+1).toUpperCase();
15
switch (zeichen) {
16
case "A":
17
morsekette = morsekette + " .-";
18
break;
19
case "B":
20
morsekette = morsekette + " -...";
21
break;
22
case "C":
23
morsekette = morsekette + " -.-.";
24
break;
25
case "D":
26
morsekette = morsekette + " -..";
27
break;
28
case "E":
29
morsekette = morsekette + " .";
30
break;
31
case "F":
32
morsekette = morsekette + " ..-.";
33
break;
34
case "G":
35
morsekette = morsekette + " --.";
36
break;
37
case "H":
38
morsekette = morsekette + " ....";
39
break;
40
case "I":
41
morsekette = morsekette + " ..";
42
break;
43
case "J":
44
morsekette = morsekette + " .---";
45
break;
46
case "K":
47
morsekette = morsekette + " -.-";
48
break;
49
case "L":
50
morsekette = morsekette + " .-..";
51
break;
52
case "M":
53
morsekette = morsekette + " --";
54
break;
55
case "N":
56
morsekette = morsekette + " -.";
57
break;
58
case "O":
59
morsekette = morsekette + " ---";
60
break;
61
case "P":
62
morsekette = morsekette + " .--.";
63
break;
64
case "Q":
65
morsekette = morsekette + " --.-";
66
break;
67
case "R":
68
morsekette = morsekette + " .-.";
69
break;
70
case "S":
71
morsekette = morsekette + " ...";
72
break;
73
case "T":
74
morsekette = morsekette + " -";
75
break;
76
case "U":
77
morsekette = morsekette + " ..-";
78
break;
79
case "V":
80
morsekette = morsekette + " ...-";
81
break;
82
case "W":
83
morsekette = morsekette + " .--";
84
break;
85
case "X":
86
morsekette = morsekette + " -..-";
87
break;
88
case "Y":
89
morsekette = morsekette + " -.--";
90
break;
91
case "Z":
92
morsekette = morsekette + " --..";
93
break;
94
case "0":
95
morsekette = morsekette + " -----";
96
break;
97
case "1":
98
morsekette = morsekette + " .----";
99
break;
100
case "2":
101
morsekette = morsekette + " ..---";
102
break;
103
case "3":
104
morsekette = morsekette + " ...--";
105
break;
106
case "4":
107
morsekette = morsekette + " ....-";
108
break;
109
case "5":
110
morsekette = morsekette + " .....";
111
break;
112
case "6":
113
morsekette = morsekette + " -....";
114
break;
115
case "7":
116
morsekette = morsekette + " --...";
117
break;
118
case "8":
119
morsekette = morsekette + " ---..";
120
break;
121
case "9":
122
morsekette = morsekette + " ----.";
123
break;
124
case "Ä":
125
morsekette = morsekette + " .-.-";
126
break;
127
case "Ö":
128
morsekette = morsekette + " ---.";
129
break;
130
case "Ü":
131
morsekette = morsekette + " ..--";
132
break;
133
case "ß":
134
morsekette = morsekette + " ...--..";
135
break;
136
case ".":
137
morsekette = morsekette + " .-.-.-";
138
break;
139
case ":":
140
morsekette = morsekette + " ---...";
141
break;
142
case ",":
143
morsekette = morsekette + " --..--";
144
break;
145
case ";":
146
morsekette = morsekette + " -.-.-.";
147
break;
148
case "?":
149
morsekette = morsekette + " ..--..";
150
break;
151
case "-":
152
morsekette = morsekette + " -....-";
153
break;
154
case "_":
155
morsekette = morsekette + " ..--.-";
156
break;
157
case "(":
158
morsekette = morsekette + " -.--.";
159
break;
160
case ")":
161
morsekette = morsekette + " -.--.-";
162
break;
163
case "'":
164
morsekette = morsekette + " .----.";
165
break;
166
case "=":
167
morsekette = morsekette + " -...-";
168
break;
169
case "+":
170
morsekette = morsekette + " .-.-.";
171
break;
172
case "/":
173
morsekette = morsekette + " -..-.";
174
break;
175
case "@":
176
morsekette = morsekette + " .--.-.";
177
break;
178
case " ":
179
morsekette = morsekette + "/";
180
break;
181
default:
182
morsekette = morsekette + "?";
183
}
184
}
185
/*System.out.println(morsekette);
186
canvas.clear();
187
int posx = 0;
188
int posy = 20;
189
for (int i = 0; i < morsekette.length(); i++) {
190
String zeichen = morsekette.substring(i, i+1).toUpperCase();
191
switch (zeichen) {
192
case ".":
193
play(0.2,0,1000.0);
194
dauer = 1000/4; canvas.fillRect(posx, posy, dauer/20, 10); // 1 kurzer Balken entspricht einem "Punkt" im Morsealphabet.
195
posx = posx + dauer/20 + 5;
196
if (posx > 780) {
197
posx = 0; posy = posy + 20;
198
}
199
break;
200
case "-":
201
play(0.6,0,1000.0);
202
dauer = 1000/1; canvas.fillRect(posx, posy, dauer/20, 10); // 1 langer Balken entspricht einem "Strich" im Morsealphabet.
203
posx = posx + dauer/20 + 5;
204
if (posx > 780) {
205
posx = 0; posy = posy + 20;
206
}
207
break;
208
case " ":
209
play(0.6,0,0.0);
210
dauer = 300/1; canvas.fillRect(posx, posy, dauer/20, 00); // 1 Strich entspricht einer Pause zwischen 2 Buchstaben.
211
posx = posx + dauer/20 + 5;
212
if (posx > 780) {
213
posx = 0; posy = posy + 20;
214
}
215
break;
216
case "/":
217
play(1.0,0,0.0);
218
dauer = 300/1; canvas.fillRect(posx, posy, dauer/20, 00); // 2 Striche entsprechen einer Pause zwischen 2 Wörtern.
219
posx = posx + dauer/20 + 5;
220
if (posx > 780) {
221
posx = 0; posy = posy + 20;
222
}
223
break;*/
224
225
public void kodieren(){
226
//buchstaben eingeben (Array/Liste?), fur jede buchstabe kombination aus . und - einsetzen
227
//for (int i=0, i<=code.length(-1), i++){
228
System.out.printl(morsekette...)
229
230
}
231
}
232
}
233
}
234
}
235
}
236