Brak ifa - jaki to ma sens?

0

Mam coś takiego:

if(klawisz == '1'){

       if( klawisz == '2' ) {
                if (wykonaj == 1)
                {
                  wykonaj = 0;
                  break;
                }
                else
                {
                  wykonaj = 1;
                  break;
                }
            }

     if(klawisz == '3')
     {
       namaluj_obrazek(); 
     }

     if(klawisz == '4')
       wypisz_tekst(); 

}

Już mówię, co ma to robic. Ma dawac mozliwosc wyboru jakiejs opcji, ale musimy najpierw wcisnac jedynke. Czyli wciskam jedynke i dopiero potem moge wybrac, co chce zrobic. Jesli wcisne dwojke, to wychodze z trybu wprowadzania danych. Jesli wykonaj == true, to wedy moge wykonywac operacje, jesli false, to nie moge. Moje pytanie: czy takim breakiem da sie wyjsc? Nie ma tu zadnej petli, a break to raczej do petli, czy sie myle?

0

O co Ci dokładniej chodzi ?

0
if(klawisz == '1'){
 
       if( klawisz == '2' ) {
...
 

Ciut dziwne te ifki masz :)

0

Tak w ogóle to wiesz że istnieje instrukcja Case? Nawet Fortran to ma :)

0

Jeśli Cię zrozumiałem to odpowiedź brzmi: instrukcja goto;

0

takie użycie breaka jest niedozwolone.Można go użyć tylko z pętlami lub switchem.

0

Ma dawac mozliwosc wyboru jakiejs opcji, ale musimy najpierw wcisnac jedynke.

Niezależnie od brake'ów, źle sprawdzasz warunki.
Takie coś

if(klawisz == '1'){
          if( klawisz == '2' ) {

nigdy nie będzie spełnione - bo jeśli klawisz równa się '1', to klawisz nie równa się '2'. musisz pobierać go za każdym razem.

1

Czy tam wyżej ktoś naprawdę wspomniał o GoTo ? :o brrrrr

0

goto też jest dla ludzi,a że wykorzystuje się je raz na ruski rok,to już inna sprawa :P

0

A palisz w jaskini pochodniami ? :)

0

Chyba o to autorowi chodziło:

if(klawisz=='2') wykonaj=!wykonaj;
else if(klawisz=='3') namaluj_obrazek();
else if(klawisz=='4') wypisz_tekst();
0

Wg mnie autorowi chodziło o:

 
if (klawisz=='1'){
  scanf("%c",&klawisz);
  if (klawisz=='2') ...
  ...
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1