Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z kilkoma if'ami - na upartego wybiera opcje 1 zamiast 2.

Ostatnio zmodyfikowano 2012-09-08 16:47
Autor Wiadomość
dominont
Temat założony przez niniejszego użytkownika
Problem z kilkoma if'ami - na upartego wybiera opcje 1 zamiast 2.
» 2012-09-08 16:09:52
Siema. Mam pewien problem. Najpierw opiszę co i jak w komentarzach w kodzie, a poniżej kodu podam problem. Po prawej kodu, która to część programu. Proszę zwrócić na to uwagę.

//deklaracje, biblioteki itp
//prośba o wybór jakiejś opcji

    cin >> opcja;
    if ( opcja == 1 )      // ----------------------------------------------------------------------------------------------- CZĘŚĆ 1.0 PROGRAMU         
    {
        //prośba o wybór jednej z czterech opcji
        cin >> opcja 1;
        if ( opcja1 == 1 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 1.1 PROGRAMU

        {
            //pobiera i oblicza dla pierwszej opcji wynik
        }

        if ( opcja1 == 2 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 1.2 PROGRAMU

        {
            //pobiera i oblicza dla drugiej opcji wynik
        }

        if ( opcja == 3 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 1.3 PROGRAMU

        {
            //pobiera i oblicza dla trzeciej opcji wynik
        }
       
        if ( opcja1 == 4 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 1.4 PROGRAMU

        {
            //pobiera i oblicza dla czwartej opcji wynik
        }
        }

   


    if ( opcja == 2 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 2.0 PROGRAMU

    {
         // Prośba o wybór następnej opcji
    cin >> opcja1;
    if (opcja1 == 1) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 2.1 PROGRAMU

    {
        //Prośba o wybór następnej opcji
    cin>> opcja2;
    if ( opcja2 == 1 ) // ----------------------------------------------------------------------------------------------- CZĘŚĆ 2.1.1 PROGRAMU

    {
        ///pobiera i oblicza dla pierwszej opcji wynik

    }

    if ( opcja2 == 2 ); // ----------------------------------------------------------------------------------------------- CZĘŚĆ 2.1.2 PROGRAMU
   
       ///pobiera i oblicza dla drugiej opcji wynik

    }
    }

       //TUTAJ CZĘŚĆ 2.2, 2.2.1, 2.2.2 PROGRAMU później 2.3 ITD (budowa taka sama jak w 2.1 i pochodnych)...
   
    system("PAUSE");
    return 0;
}
Część 1.0, 1.1, 2.0 i 2.1 jest dobrze wybierana przez program. Natomiast problemem jest część 2.1.1 i 2.1.2. Gdy jestem już w menu wyboru pomiędzy 2.1.1, a 2.1.2 Obojętnie czy wpiszę 1, czy dowolnie inną liczbę, zawsze wybierze się opcja 2.1.1. Pobierze dane które chcę, a jak to zrobi, to nie podaje wyniku tylko przechodzi sama do 2.1.2 i tam też pobiera dane i pokazuje wynik dla opcji 2.1.2.
Ciut skomplikowane, ale jest to dla mnie ważne. Mam jeszcze dużo do napisania. Chcę używać tylko if'ów, ewentualnie else'ów.
P-64582
wojtu111
....
» 2012-09-08 16:39:07
Nie wiem czy o to chodzi ale po
if( opcja2 == 2 );
 tam jest srednik a nie powinno go być :P
P-64590
dominont
Temat założony przez niniejszego użytkownika
» 2012-09-08 16:47:56
Hahahaha, to był problem. A ja tu kilka godzin się głowiłem, kombinowałem nie wiadomo jak, czytałem i już mnie głowa mocno boli. Wziąłem już dobrą tabletkę przeciwbólową i idę spać. Dobranoc.

Dziękuję Ci bardzo za pomoc!!!
P-64594
« 1 »
  Strona 1 z 1