Witam,
Oto zasady gry:
Należy zabrać 1,2 lub 3 zapałki w każdym ruchu. Przegrywa ten, kto będzie musiał zabrać ostatnią zapałkę.<
#include <iostream>
#include <cstdlib>
#include <time.h>
using namespace std;
int liczba,gracz1,gracz2;
int main()
{
srand(time(NULL));
liczba = rand()%100+1;
cout<<"Wylosowana liczba zapalek do gry to: "<< liczba <<endl;
while(liczba!=0)
{
cout<<"(Gracz1) Podaj liczbe ile chcesz zabrac kamykow: "<<endl;
cin>>gracz1;
liczba=liczba-gracz1;
cout<<"Liczba pozostalych zapalek: "<< liczba <<endl;
if(liczba=0)
{
cout<<"Pierwszy gracz wygral"<<endl;
}
cout<<"(Gracz2)Podaj liczbe ile chcesz zabrac kamykow: "<<endl;
cin>>gracz2;
liczba=liczba-gracz2;
cout<<"Liczba pozostalych zapalek: "<< liczba <<endl;
if(liczba=0)
{
cout<<"Drugi gracz wygral"<<endl;
}
}
return 0;
}
To co mi się wyświetla po odpaleniu programu:
Wylosowana liczba zapalek do gry to: 31
(Gracz1) Podaj liczbe ile chcesz zabrac kamykow:
3
Liczba pozostalych zapalek: 28
(Gracz2)Podaj liczbe ile chcesz zabrac kamykow:
2
Liczba pozostalych zapalek: -2
Process returned 0 (0x0) execution time : 3.380 s
Press any key to continue.
za drugim razem zamias odjąć od 28 liczbe 2 to nie mam pojęci co się dzieje.
Co zmienić w kodzie aby program działał poprawnie?