Gra milionerzy kilka problemów.

0

Chcę zrobić grę milionerzy.

Mam taki kod pytania:

void pytanie18()
{
   if( !wyswietlZawartosc( "pytania/18.txt" ) )
         cout << "Nie udalo sie otworzyc pliku o podanej nazwie." << endl;
         char odp=0;
         cin>>odp;
         if(odp != 'b')
			{	
				system("cls");
				sprawdzstatus(); //ustawiłem sobie statusy wygranych, w przypadku błędnej odpowiedzi gracz otrzymuję wygraną z progu gwarantowanego
				getch();
         		poprawnie=0;
		 	}
}

Chciałbym do tego dodać możliwość wyjścia z gry, wpisując w konsoli "koniec" (). nie za bardzo wiem jak to zrobić aby gracz po wpisaniu "koniec" otrzymał nagrodę za kwotę z którą skończył (wyświetliła się informacja o wygranej).

Brakuje jakiś części kodu/funkcji itp to mogę wrzucić, na razie nie wiem co Wam potrzebne.

(jeżeli temat powinien być w dziale Newbie, to proszę o przeniesienie, wahałem się gdzie to dodać, postanowiłem tutaj)

1

Raczej musisz wrzucić cały kod.

Nie wiem w jakim języku piszesz , ale jeżeli w c++, to ja to widzę tak, że wystarczy zrobić klasę, w której jako pole będzie posiadana już kwota. Jeżeli użytkownik wpiszę koniec to po prostu wyświetli się ta kwota i po problemie.

W C też to nie powinien być problem , bo można zrobić strukturę, w której będzie też pole z kwotą i po prostu: "koniec" i wyświetla się kwota.

Jeżeli nie miałeś programowania obiektowego, to zrób sobie zmienną globalną.

0

Nie wiem w jakim języku piszesz , ale jeżeli w c++, to ja to widzę tak, że wystarczy zrobić klasę, w której jako pole będzie posiadana już kwota. Jeżeli użytkownik wpiszę koniec to po prostu wyświetli się ta kwota i po problemie.

Mam zrobione dokładnie jak mówisz i z tym sobie poradzę, ale mam problem z czym innym, chyba nie jasno napisałem.
Chodzi mi dokładniej o to aby po wpisaniu "koniec" włączyła się funkcja (jaka to juz sobie poradzę). W warunku mam "jeżeli inny niż b". Obecnie kiedy wpiszę "koniec" wtedy wyświetli się info o końcu gry bo, po prostu nie wiem gdzie dać warunek dla "końca"? Jeżeli przed moim ifem dam "jeżeli odp=koniec to:..." to będzie to działać poprawnie?

Nie chcę dawać całego kodu bo jest napisany po amatorsku i ma 850 linijek + do tego jakieś 60 plików txt które są doczytywane :D
Chyba że koniecznie chcecie to mogę dać.

1

Nie pamiętam czy w milionerach było tak, że można było zrezygnować tylko przed następnym pytaniem, czy można było zrezygnować jak już się miało pytanie wzięte na klatę.

Ale wydaje mi się:

"jeżeli odp=koniec to:..." to będzie to działać poprawnie?

to będzie działać poprawnie.

0

Chyba można, no i to jest też dobry pomysł z tym przewaniem gry przed zadaniem pytania. Chyba łatwiej będzie to zrobić (nie będę musiał przerabiać każdego pytania, tylko przed każdym poziomem(1 z 12 pytań) zapytam czy grasz dalej)?

1

Powinieneś napisać funkcję "obsługi" pytania i przekazywać treść na parametrze (lub nazwę pliku) oraz prawidłową odpowiedź. Zamiast 18 funkcji po jednej na pytanie będziesz mieć 1 funkcję i 18 wywołań. W milionerach można zrezygnować w każdym momencie - nawet jak się ma już pytanie. Jak napiszesz taką funkcję, to modyfikacja nie będzie sprawiać takiego problemu

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