Jos tän pystyy joku ratkaseen, niin on kyllä aika hyvä! Ite en saanu pelittään.
tarkoituksena olisi toteuttaa "morse-kääntäjä".
Ohjelma saa syötteenään morsetusta josta se tuottaa sitä vastaavat
kirjaimet. Ohjelman tarvitsee ymmärtää vain kirjaimet väliltä a-z.
Tässä ei saa käyttää luokkaa StringTokenizer morsemerkkien
pilkkomiseen. Ohjelma ei saa kaatua millään syötteellä.
esimerkkitulostus:
> java MattiMeikalainen1234567
Työ2: Morse-kääntäjä
Tekijä: Matti Meikäläinen
E-mail: [email protected]
-- . - ... .- -. .--. . .. -.- -.- ---
metsanpeikko
>
Morsemerkit erotellaan välilyönneillä toisistaan. Virheellisen
merkin saadessaan ohjelma ilmoittaa siitä seuraavanlaisesti:
> java Morse
-- . - ... .- -. .--. . .. -.- -.- -!-
metsanpeikk [virhe]
>
Morsemerkit:
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 --..
tarkoituksena olisi toteuttaa "morse-kääntäjä".
Ohjelma saa syötteenään morsetusta josta se tuottaa sitä vastaavat
kirjaimet. Ohjelman tarvitsee ymmärtää vain kirjaimet väliltä a-z.
Tässä ei saa käyttää luokkaa StringTokenizer morsemerkkien
pilkkomiseen. Ohjelma ei saa kaatua millään syötteellä.
esimerkkitulostus:
> java MattiMeikalainen1234567
Työ2: Morse-kääntäjä
Tekijä: Matti Meikäläinen
E-mail: [email protected]
-- . - ... .- -. .--. . .. -.- -.- ---
metsanpeikko
>
Morsemerkit erotellaan välilyönneillä toisistaan. Virheellisen
merkin saadessaan ohjelma ilmoittaa siitä seuraavanlaisesti:
> java Morse
-- . - ... .- -. .--. . .. -.- -.- -!-
metsanpeikk [virhe]
>
Morsemerkit:
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 --..
Vastaukset 6
Vanhimmat
Selvä koulutehtävä. Tosta ei kyllä hirveesti opi, että pasteet tänne tehtäväksiannon ja odotat, että joku antaa valmiin koodin.
Ohjelmoijoi mielummin ite, käännä koodia, tee korjailuja, käännä uudestaan ja jos ei millään toimi niin laita tänne tekemäsi koodi niin joku voi kertoa missä virhe.
String luokallakin on metodeja joilla saa eroteltua nuo merkit toisistaan.
Katso vaikka apista:
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html
tuolla koko api:
http://java.sun.com/j2se/1.4.2/docs/api/
HashTableen vaikka koko roska nimi/arvo-pareina.
... = S
--- = O
jne.
Sitten lukee syötettä läpi merkki kerrallaan johonkin muuttujaan ja stoppi, kun tulee välilyönti vastaan.
sitte vaa hastablesta ettii muuttujassa olevalla arvolla ja jos ei löydy mitään, niin se on virhe
Miten sitä pystyy lukemaan merkki kerrallaan silleen, että ohjelma tajuaa vällilyönnin jälkeen, että merkki vaihtuu?
String syöte = lueRivi();
ja sitten joku if-lausekko
Eli katos APIsta StringTokenizer...
Tehtävänannossa nimenomaan kielletään sen käyttö.
Sitten apuja. Kuinka mää saan käyttäjän antaman morsekoodin tulostumaan kirjaimina?
import java.util.Hashtable;
public class Tehtava{
public static void main(String [] args){
Hashtable morse = new Hashtable();
morse.put(".-", "A");
morse.put("-...", "B");
morse.put("-.-.", "C");
morse.put("-..", "D");
morse.put(".", "E");
morse.put("..-.", "F");
morse.put("--.", "G");
morse.put("....", "H");
morse.put("..", "I");
morse.put(".---", "J");
morse.put("-.-", "K");
morse.put(".-..", "L");
morse.put("--", "M");
morse.put("-.", "N");
morse.put("---", "O");
morse.put(".--.", "P");
morse.put("--.-", "Q");
morse.put(".-.", "R");
morse.put("...", "S");
morse.put("-", "T");
morse.put("..-", "U");
morse.put("...-", "V");
morse.put(".--", "W");
morse.put("-..-", "X");
morse.put("-.--", "Y");
morse.put("--..", "Z");
System.out.println("Anna morsetusta");
String morsekoodi = lueRivi();
String merkkijono = "";
for(int i=0; i