c++ morse till text HJÄLP!!
Hej!
Jag har (precis som så många andra) fått i uppgift att skriva ett C++ program som översätter text till morse och morse till text.
Text till morse har jag fått fixat men nu när jag ska översätta från morse blir det problem!!
Tanken är att man ska kunna skriva in flera morsebokstäver på samma rad med mellanrum mellan tecknen.
Men om jag skriver flera ord översätter den ingenting. Programmet översätter bara om jag skriver in ett tecken. Har också försökt skriva in
flera tecken på samma rad utan mellanrum men då översätts det heller ingenting. JAG BLIR GALEN!! Om det finns nån där ute som har lust
att hjälpa mig med den sista pusselbiten så hade jag blivit väldigt glad! Och glöm inte att jag är nybörjare. Har bara hållt på i några veckor
(vilket antagligen framgår av koden ). Så här ser koden ut:
#include <iostream>
#include <string>
#include "svenska.h"
using namespace std;
int main()
{
dos_console();
string alfabetet[] = { "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","å","ä","ö" };
string morsekod[] = { ".-","-...","-.-.","-..",".","..-.","--.", "....",
"..",".---","-.-",".-..","--","-.","---",".--.",
"--.-",".-.","...","-","..-","...-",".--","-..-",
"-.--","--..",".--.-",".-.-","---."};
int i; // räknare
string morse; // morse input
string trans2; // översättning till bokstäver
cout << "Skriv in ett morsetecken" << endl;
getline(cin, morse);
// hitta motsvarande indexnr i morsekoden
for ( i = 0 ; i < 29; i++)
{
if ( morse == morsekod[i])
{
trans2 += alfabetet[i];
}
}
cout << trans2 << endl;
system("pause");
return 0;
}
MVH - Johan