Gracz rzuca dwie kości. Każda z nich ma 6 ścianek. Kiedy kości zostają rzucone, obliczana jest suma
punktów. Jeżeli przy pierwszym rzucie suma wynosi 7 lub 11 gracz wygrywa. Jeśli suma wynosi przy
pierwszym rzucie 2, 3 lub 12 gracz przegrywa. Jeżeli suma wynosi 4, 5, 6, 8, 9 lub 10 przy pierwszym
rzucie, gra jest nierozstrzygnięta, a suma staje się „punktami” gracza.
Aby uzyskać wynik musi kontynuować rzucanie kośćmi, aż do uzyskania „swoich punktów”. Jeżeli
gracz wyrzuci 7 - przegrywa.
Gracz na początku ma 100 zł, każda wygrana to uzyskane 10 zł, przegrana trzeba oddać 15 zł. Gra
kończy się, kiedy gracz nie ma pieniędzy, albo rezygnuje z gry.
Przykład dla jednego gracza:
Gra 1
Rzut 1 – 7 pkt – gracz wygrywa (na koncie gracza 110)
Gra 2
Rzut 1 – 12 pkt – gracz przegrywa (na koncie gracza 95)
Gra 3
Rzut 1 – 6 pkt - trzeba kontynuować rzucanie kostkami
Rzut 2 – 4 pkt – brak wyniku
Rzut 3 – 10 pkt – brak wyniku
Rzut 4 – 7 pkt – gra przegrana ( na koncie gracza 80)
Gra 4
Rzut 1 – 8 pkt - trzeba kontynuować rzucanie kostkami
Rzut 2 – 5 pkt – brak wyniku
Rzut 3 – 10 pkt – brak wyniku
Rzut 4 – 8 pkt – gra wygrana ( na koncie gracza 95)
Stworzyłem takiego potworka i nie mam pomysłu jak ubrać to w pętlę zliczającą ilość gotówki i pozwalającą na grę tak długo aż gotówka nie wyniesie 0 lub sam gracz opuści grę. Może całe moje podejście jest błędne i lepiej napisać to w inny sposób ? Czekam na feedback :P
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
#include <cstdlib>
#include <conio.h>
using namespace std;
int pln = 100;
void opcja1();
int main()
{
char wybor;
while (true)
{
cout << " Witaj w grze k6 dice game ! " << endl;
cout << " Wybierz forme gry lub wyjdz: " << endl;
cout << " _____________________________" << endl;
cout << " Graj --> wybierz (1) " << endl;
cout << " Wyjscie --> wybierz (0) " << endl;
wybor = _getch();
switch (wybor)
{
case '1': opcja1(); break;
case '0': exit(0); break;
default: cout << " Blad ! Podales zla liczbe ! Wybierz ponownie" << endl;
}
cout << endl;
cout << endl;
cout << " Wcisnij dowolny klawisz, zeby zresetowac !!!" << endl;
_getch();
system("cls");
}
}
void opcja1()
{
srand(time(NULL));
int k1 = rand() % 6 + 1;
int k2 = rand() % 6 + 1;
int w1 = k1 + k2;
char wybor = 't';
if (w1 == 7 || w1 == 11)
{
cout << endl;
cout << " ____________________" << endl;
cout << " Kosc numer jeden: " << k1 << endl;
cout << " ____________________" << endl;
cout << " Kosc numer dwa: " << k2 << endl;
cout << " ____________________" << endl;
cout << " Wygrales !!!" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to: " << w1 << endl;
cout << " ____________________" << endl;
pln = pln + 10;
cout << " pln: " << pln << endl;
}
else if (w1 == 2 || w1 == 3 || w1 == 12)
{
cout << endl;
cout << " ____________________" << endl;
cout << " Kosc numer jeden: " << k1 << endl;
cout << " ____________________" << endl;
cout << " Kosc numer dwa: " << k2 << endl;
cout << " ____________________" << endl;
cout << " Przegrales !!!" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to: " << w1 << endl;
cout << " ____________________" << endl;
pln = pln - 15
cout << " pln: " << pln << endl;
}
else
{
cout << endl;
cout << " ____________________" << endl;
cout << " Kosc numer jeden: " << k1 << endl;
cout << " ____________________" << endl;
cout << " Kosc numer dwa: " << k2 << endl;
cout << " ____________________" << endl;
cout << " Gra nierozstrzygnieta ! Musi powtorzyc rzut !" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to: " << w1 << endl;
cout << " ____________________" << endl;
cout << " pln: " << pln << endl;
do
{
int k3 = rand() % 6 + 1;
int k4 = rand() % 6 + 1;
int w2 = k3 + k4;
cout << endl;
cout << " Czy chcesz kontynuowac gre ? Wybierz (t/n):" << endl;
cin >> wybor;
if (wybor == 't')
{
if (w2 == 7)
{
cout << endl;
cout << " ____________________" << endl;
cout << " Kosc numer jeden:" << k3 << endl;
cout << " ____________________" << endl;
cout << " Kosc numer dwa:" << k4 << endl;
cout << " ____________________" << endl;
cout << " Przegrales !!!" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to:" << w2 << endl;
pln = pln - 15;
cout << " pln: " << pln << endl;
}
else if (w1 == w2)
{
cout << endl;
cout << " ____________________" << endl;
cout << " Kosc numer jeden:" << k3 << endl;
cout << " ____________________" << endl;
cout << " Kosc numer dwa:" << k4 << endl;
cout << " ____________________" << endl;
cout << " Wygrales !!!" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to:" << w2 << endl;
pln = pln + 10;
cout << " pln: " << pln << endl;
}
else
{
cout << endl;
cout << " ____________________" << endl;
cout << " Brak rozstrzygniecia ! Trzeba powtorzyc rzut !" << endl;
cout << " ____________________" << endl;
cout << " Twoj wynik to:" << w2 << endl;
cout << " pln: " << pln << endl;
}
}
else if (wybor == 'n')
{
cout << " Zakonczyles gre !" << endl;
cout << " Ilosc Twojej gotowki jest rowna: " << pln << endl;
}
else
{
cout << " Nie ma takiej opcji ! Wybierz ponownie !" << endl;
}
} while (pln == 100);
}
}