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

Lekcja 14 switch...case

Ostatnio zmodyfikowano 2012-01-16 09:03
Autor Wiadomość
darvd29
Temat założony przez niniejszego użytkownika
Lekcja 14 switch...case
» 2012-01-16 09:03:47
Siema. Czemu kompilator upiera się przy "illegal case" jeśli chodzi o case 2 i 3? Wszystko inne jest OK.

C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
int main()
{
    int proba, wybor;
    int szansa = 6;
    int a;
    do
    {
        srand( time( NULL ) );
        int wylosowana =( rand() % 10 );
        std::cout << "Witaj w grze liczbowej. Wybierz opcje:" << std::endl << "[1] Zasady" << std::endl << "[2] Graj" << std::endl << "[3] Wylacz" << std::endl;
        std::cin >> wybor;
        switch( wybor )
        case 1
    :
        {
            std::cout << "1. Komputer losuje liczbe z zakresu od 0 do 10. Ty musisz ja zgadnac." << std::endl;
            std::cout << "2. Masz 5 prob. Jesli nie zgadniesz - przegrywasz." << std::endl;
            std::cout << "3. Nie wpisuj liczb innych niz z zakresu podanego wyzej, bo gra sie scrashuje." << std::endl;
            std::cout << "Wpisz 1 aby rozpoczac gre: \t";
            std::cin >> a;
        }
    case 2:
        {
            do
            {
                std::cout << "Pozostalo prob:" << szansa - 1 << std::endl << "Podaj liczbe: \t";
                std::cin >> proba;
                if( proba > wylosowana )
               
                     std::cout << "Wylosowana liczba jest mniejsza od: " << proba << std::endl;
               
                if( proba < wylosowana )
               
                     std::cout << "Wylosowana liczba jest wieksza od: " << proba << std::endl;
               
                if( proba == wylosowana )
               
                     std::cout << "BRAWO!! Wygrales!!! Wylosowana liczba to: " << wylosowana << std::endl;
               
                if( szansa == 0 )
               
                     std::cout << "Niestety przegrales. Sprobuj jeszcze raz." << std::endl;
               
            } while( szansa != 0, proba != wylosowana );
           
        }
    } while( wybor != 3 );
   
case 3:
    {
        std::cout << "Zapraszam ponownie! Autor: Dawid Data" << std::endl;
    }
   
    system( "PAUSE" );
    return 0;
}

Co do tych szans - one na razie nie działają, ale pytam o rozwiązanie w innym temacie :D Jakby co to chcę zrobić żeby ta szansa zmieniała się za każdym razem, żeby ciągle odejmowało się 1, czyli chcę żeby szansa wynosiła 5,4,3,2,1 aż do 0 czyli przegranej. Innymi słowy chcę żeby "szansa" ciągle się zmieniała. Jak to zrobić?

EDIT.
PRZEPRASZAM!! Ale jestem tępy! Wystarczyło sprawdzić kod jeszcze raz, nie dałem po switchu klamerek <facepalm>, temat do zamknięcia...
P-48357
« 1 »
  Strona 1 z 1