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

zapentlone menu na switch-ach

Object Storage Arubacloud
+1 głos
294 wizyt
pytanie zadane 3 września 2016 w C i C++ przez Kamill Winiarski Nowicjusz (130 p.)
edycja 3 września 2016 przez Kamill Winiarski

Witajcie.

Czy ktoś moglby mi pomoc w moich probleme z menu.

W pierwszy menu wybieram '1' ,i jestem w  kolejnym, i tu zaczyna sie problem  po wyborze innym niz 1,2,3,4 zostaje wyswietlony prawidlowo napisany  cout, lecz znowu jestem we wczesniejszym menu i znowu musze wybierac opcje 1, 
 

 

 

using namespace std;

char wybor;
char ilugraczy;
void menu(),start(),zasady(),ranking (), iloscgraczy(),autor(),menubezdwa(),menubeztrzy(),menubezcztery();
int powrotdomenu()
{menu();cout<<"Wybierz ponownie opcje: "; wybor=getch();}

int main()
{
    menu();
    do
    {
        cout<<"Twoj wybor to: ";
        wybor=getch();
        switch(wybor)
        {
        case '1':
            system("cls");
            iloscgraczy();
            ilugraczy=getch();

            {
                switch(ilugraczy)
                {
                case '1':
                    system("cls");
                    iloscgraczy();
                    cout<<"1"<<endl<<endl;
                    break;
                case '2':
                    system("cls");
                    iloscgraczy();
                    cout<<"2"<<endl<<endl;
                    break;
                case '8':
                    system("cls");
                    menu();
                    break;
                case '9':
                    system("cls");
                    koniecilugraczy ();
                    break;
                default:
                    system("cls");
                    iloscgraczy();
                    cout<<"zl ilosc graczy!!! uzyj klawisza od '1' do '4' ";
                    ilugraczy=getch();
                    break;
                }
                break;
            }
        case '2':
            system("cls");
            menubezdwa ();
            zasady();
            break;
        case '3':
            system ("cls");
            menubeztrzy ();
            ranking();
            break;
        case '4':
            system("cls");
            menubezcztery();
            autor();
            break;
        case '9':
            koniecmenu();
            break;
        default:
            system("cls");
            menu();
            cout<<"-----NIE MA TAKIEJ OPCJI W MENU !!!-----"<<endl<<endl;
            cout<<"=========================================="<<endl<<endl;
            break;
            cout<<endl;
        }
    }
    while (wybor!='9');
    return 0;
}

 

komentarz 3 września 2016 przez 123skiper Bywalec (2,170 p.)
Ustaw kod jako tag kod :)
komentarz 3 września 2016 przez Kamill Winiarski Nowicjusz (130 p.)
tzn ??
4
komentarz 3 września 2016 przez manjaro Nałogowiec (37,390 p.)
Nie jestem polonistą ale takich postów czytać się nie da...

1 odpowiedź

0 głosów
odpowiedź 4 września 2016 przez kGrab Użytkownik (700 p.)

Dawno nie robiłem niczego w C, ale na pierwszy rzut oka sytuacja wygląda tak:

  • w nadrzednej petli do .. while mamy switch(wybor)
  • wybierasz 1 i ten case odpala kolejny switch(ilugraczy)
  • wpisując wartość pasującą do default opuszczasz switcha wewnetrzego instrukcja break
  • jestes teraz w case 1 zewnetrzengo switcha i nastepna instrukcja jest break
  • ponieważ wybor != 9 jesteś w menu głównym i dlatego musisz znowu wybrać 1

***

Przypuszczam, że chcesz zostać w wewnetrznym switchu jak wybierzesz wartość nie przewidzianą przez menu,

możesz np użyć takiej petli do..while jak dla zewnetrznego switcha, ale nie wiem czy to najwydajniejsze rozwiązanie.
 

PS. Na przyszłość staraj sie opisać swój problem w bardziej przystepny sposób (w punktach, w liście) i jakoś ładniej wkleić kod, bo jak kolega manjaro wspomniał nie da sie tego czytać i ma absolutną racje.

PS.2 Umiejetność opisu problemu jest podstawą algorytmiki i przyda Ci sie nie tylko w komunikacji z ludźmi ale też z komputerem :)

PS.3 Tytuł problemu razi po oczach nawet mnie, osobe używającą polskich znaków losowo, gdy mi sie chce


Pozdrawiam.

Podobne pytania

+1 głos
1 odpowiedź 505 wizyt
pytanie zadane 23 grudnia 2016 w C i C++ przez Forester Użytkownik (560 p.)
0 głosów
4 odpowiedzi 305 wizyt
0 głosów
1 odpowiedź 921 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 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!

...