• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

c++ alfabet morse'a

Object Storage Arubacloud
+1 głos
4,131 wizyt
pytanie zadane 9 października 2018 w C i C++ przez lucelka Początkujący (260 p.)

Cześć,

czy ktoś mógłby mi proszę pomóc poprawić ten kod ,w jak najłatwiejszy  sposób, tak aby działał poprawnie ?

powinien to być program tłumaczący słowa  języku polskim na alfabet morse'a ( dodatkową funkcją mogłoby być odwrotne tłumaczenie.

Z góry dziękuję :))

 

#include <iostream>
#include<string>
using namespace std;

main()
{
    string tekst;
    string wynik = "s";
    char alfabet [26] = {'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 alfabet_morsea[26] ={".-", "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.." };




    cout << "podaj slowo ktore chcesz przetlumczyæ " << endl;
    cin >> tekst;

    for (int x=0; x<=tekst.length(); x++)
    {
        for (int y=0; y<=26; y++)
        {
            if ( tekst.at(x) == alfabet [y] )
            {
                wynik.push_back( alfabet [y]);
                wynik.push_back( '/');
            }
        }

    }

    cout << endl << wynik << endl << endl;




}


 

2 odpowiedzi

+1 głos
odpowiedź 9 października 2018 przez j23 Mędrzec (194,920 p.)
wybrane 9 października 2018 przez lucelka
 
Najlepsza
  • Linia 18: nie <= tylko <, to samo w linii 20.
  • Linia 22: to at jest tam zbędne, bo x, jeśli poprawisz warunek, nigdy nie przekroczy zakresu.
  • Linia 24: popraw na wynik.append( alfabet_morsea [y]);
–3 głosów
odpowiedź 9 października 2018 przez Dominik Kostencki Użytkownik (650 p.)
przywrócone 11 października 2018 przez Dominik Kostencki
Używasz funkcji push_back dla stringa,a powinieneś zrobić to dla vectora. Nie możesz również zapisać alfabet_morse w ten sposób, przydałaby sie tablica dwuwymiarowa ,następna kwestia to jeśli ktoś wprowadzi dane z klawiatury małymi literami  program nie zadziała poprawnie.
komentarz 9 października 2018 przez j23 Mędrzec (194,920 p.)
edycja 9 października 2018 przez j23

Żeś pojechał ;) std::string posiada metodę push_back, więc może jej użyć (choć może nie tu). Tablica alfabet_morsea jest jak najbardziej ok.

Podobne pytania

0 głosów
0 odpowiedzi 460 wizyt
pytanie zadane 21 sierpnia 2020 w SPOJ przez magda_19 Gaduła (3,080 p.)
0 głosów
2 odpowiedzi 13,418 wizyt
+1 głos
2 odpowiedzi 241 wizyt
pytanie zadane 29 czerwca 2022 w SQL, bazy danych przez AgentTecza Obywatel (1,810 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...