Lekcja 14 switch...case
Ostatnio zmodyfikowano 2012-01-16 09:03
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. #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... |
|
« 1 » |