Okei...mun täytyy tehdä C - ohjelma, joka kääntää normaalin tekstin morsetukseksi,mutta en ole tähän mennessä onnistunut.Olen määritellyt vakiotaulukot const string morseCode[] = {".-",...,"--.."} morseaakkosille ja const char alphabets[] = {'a',...,'z'} ja tehnyt seuraavanlaisen kääntäjäfunktion:
string morseToAlphabet(string morse)
{
string translation = "";
for(int i = 0; i < morse.length(); i )
{
if(morse[i] == morseCode[0])
{
translation = alphabets[0];
}
else if(morse[i] == morseCode[1])
{
translation = alphabets[1];
}
//...
else if(morse[i] == morseCode[25])
{
translation = alphabets[25];
}
else if(morse[i] = ' ')
{
translation = "";
}
else
{
translation = "[error]";
}
}
return translation;
}
Tämä tietenkin herjaa siitä,kun morse[i]:tä(yksittäinen merkki)verrataan merkkijonoon eli morseCode[]:n alkioon ja kääntäminen ei siten onnistu,mutta sekin menee pieleen,jos määrittelee morseaakkoset yksittäisiksi merkeiksi(char),sitten se tulostaa ihan hölmöjä.Miten tämän sitten saa tehtyä,siinäpä kysymys?
Kiitos jo etukäteen neuvoista!:)
Mahdoton koulutehtävä... :'(
4
1236
Vastaukset
- mites tämä...
sanot
"Olen määritellyt vakiotaulukot const string morseCode[] = {".-",...,"--.."} morseaakkosille ja const char alphabets[] = {'a',...,'z'}"
Mikä on tämä morse[i]?
Yksittäinen merkki, mistä tullut?
Mikä idea on verrata sitä morsekoodiin?- keksa
ja c voit indeksoida stringiää tolleen
string keksa = "keksa";
char eka = keksa[0]; // eli merkki k
Jos se string morse on vaikka "hello world", niin eihän sen ekaa merkkiä voi mihinkään morseCode-taulukon alkioon verrata, koska siellä oli ne morsemerkit ja ne on useita merkkejä putkessa ..--
Lisäksi sulla on nyt 25 kertaa sama koodi tehtynä ja sen pitäis jo kertoa sulle, että pitää tehdä aliohjelma jota kutsua loopissa. Mitäs jos tulee 480 aakkosta lisää? Teet saman koodin about 500 kertaa lisää vai?
string morseToAlphabet(string morse)
{
string translation = "";
for(int i = 0; i < morse.length(); i )
{
translation = getMorseCodeForChar(morse.charAt(i)); // charAt() kait toimii c tai sitten[i]
}
return translation;
}
string getMorseCodeForChar(char merkki)
{
string paluuArvo="";
for(int i = 0; i < alphabets.length(); i ) // en tiedä onko tuota .length() taulukolle c :ssa
{
if(merkki == alphabets[i]) //onko merkki joku aakkonen?
{
paluuArvo = morseCode[i] ","; //lisätään morsemerkki merkkijono
}
else if(merkki == ' ') paluuArvo = ",";
}
return paluuArvo;
} - so sick n' tired
keksa kirjoitti:
ja c voit indeksoida stringiää tolleen
string keksa = "keksa";
char eka = keksa[0]; // eli merkki k
Jos se string morse on vaikka "hello world", niin eihän sen ekaa merkkiä voi mihinkään morseCode-taulukon alkioon verrata, koska siellä oli ne morsemerkit ja ne on useita merkkejä putkessa ..--
Lisäksi sulla on nyt 25 kertaa sama koodi tehtynä ja sen pitäis jo kertoa sulle, että pitää tehdä aliohjelma jota kutsua loopissa. Mitäs jos tulee 480 aakkosta lisää? Teet saman koodin about 500 kertaa lisää vai?
string morseToAlphabet(string morse)
{
string translation = "";
for(int i = 0; i < morse.length(); i )
{
translation = getMorseCodeForChar(morse.charAt(i)); // charAt() kait toimii c tai sitten[i]
}
return translation;
}
string getMorseCodeForChar(char merkki)
{
string paluuArvo="";
for(int i = 0; i < alphabets.length(); i ) // en tiedä onko tuota .length() taulukolle c :ssa
{
if(merkki == alphabets[i]) //onko merkki joku aakkonen?
{
paluuArvo = morseCode[i] ","; //lisätään morsemerkki merkkijono
}
else if(merkki == ' ') paluuArvo = ",";
}
return paluuArvo;
}"Lisäksi sulla on nyt 25 kertaa sama koodi tehtynä ja sen pitäis jo kertoa sulle, että pitää tehdä aliohjelma jota kutsua loopissa. Mitäs jos tulee 480 aakkosta lisää? Teet saman koodin about 500 kertaa lisää vai?"
Onhan se tyhmää tehdä oma koodi joka aakkoselle(niitähän vois olla vaikka 500,mutta en mä sitten tietenkään olis tehnyt mitään noin tyhmää).Oon ohjelmoinu vasta vähän aikaa ja olin vähän epätoivoinen tämän tehtävän kanssa,kun ei olla käyty vielä stringien kaikkia hienouksia läpi ja maikka käski kattoa omatoimisesti yheltä enkunkieliseltä sivustolta vinkkejä tähän meidän etätehtävään...:-D Mut kiitti,tota täytyy kokeilla! :-) - keksa
so sick n' tired kirjoitti:
"Lisäksi sulla on nyt 25 kertaa sama koodi tehtynä ja sen pitäis jo kertoa sulle, että pitää tehdä aliohjelma jota kutsua loopissa. Mitäs jos tulee 480 aakkosta lisää? Teet saman koodin about 500 kertaa lisää vai?"
Onhan se tyhmää tehdä oma koodi joka aakkoselle(niitähän vois olla vaikka 500,mutta en mä sitten tietenkään olis tehnyt mitään noin tyhmää).Oon ohjelmoinu vasta vähän aikaa ja olin vähän epätoivoinen tämän tehtävän kanssa,kun ei olla käyty vielä stringien kaikkia hienouksia läpi ja maikka käski kattoa omatoimisesti yheltä enkunkieliseltä sivustolta vinkkejä tähän meidän etätehtävään...:-D Mut kiitti,tota täytyy kokeilla! :-)kun itse aloittelin koodaamista, niin piti koodata annetun luvun kertoma.
Aloin tekemään ohjelmaa ja tein aina uuden metodin, kun joku halusi syöttää uuden luvun ohjelmaan.
int annettu_luku
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Aivosyöpää sairastava Olga Temonen TV:ssä - Viimeinen Perjantai-keskusteluohjelma ulos
Näyttelijä-yrittäjä Olga Temonen sairastaa neljännen asteen glioomaa eli aivosyöpää, jota ei ole mahdollista leikata. Hä912900Pelotelkaa niin paljon kuin sielu sietää.
Mutta ei mene perille asti. Miksi Venäjä hyökkäisi Suomeen? No, tottahan se tietenkin on jos Suomi joka ei ole edes soda2991686Mikä saa ihmisen tekemään tällaista?
Onko se huomatuksi tulemisen tarve tosiaan niin iso tarve, että nuoruuttaan ja tietämättömyyttään pilataan loppuelämä?2461557- 871391
IL - VARUSMIEHIÄ lähetetään jatkossa NATO-tehtäviin ulkomaille!
Suomen puolustuksen uudet linjaukset: Varusmiehiä suunnitellaan Nato-tehtäviin Puolustusministeri Antti Häkkänen esittel4021374Nyt kun Pride on ohi 3.0
Edelliset kaksi ketjua tuli täyteen. Pidetään siis edelleen tämä asia esillä. Raamattu opettaa johdonmukaisesti, että3981292Kiitos nainen
Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik21079Esko Eerikäinen tatuoi kasvoihinsa rakkaan nimen - Kärkäs kommentti "Ritvasta" lävähti somessa
Ohhoh! Esko Eerikäinen on ottanut uuden tatuoinnin. Kyseessä ei ole mikä tahansa kuva minne tahansa, vaan Eerikäisen tat381037Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?
Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun329874Miksi Purra-graffiti ei nyt olekkaan naisvihaa?
"Pohtikaapa reaktiota, jos vastaava graffiti olisi tehty Sanna Marinista", kysyy Tere Sammallahti. Helsingin Suvilahden257855