Gra NIM
Ostatnio zmodyfikowano 2021-03-29 19:49
zenekmaister Temat założony przez niniejszego użytkownika |
Gra NIM » 2021-03-29 15:38:48 Dostałem dziś jako pracę domową do napisani grę NIM w której gra użytkownik kontra komputer i mam problem jak napisać by komputer zawsze wybierał rząd w którym cos jest i by losował liczbę nie większą od ilości w danym rzędzie
#include<iostream> #include<cstdlib> #include<ctime> using namespace std;
void wyswietl (int i1, int i2, int i3) { int i; for(i=1; i<=i1; i++) cout<<"@"<<" "; cout<<endl; for(i=1; i<=i2; i++) cout<<"@"<<" "; cout<<endl; for(i=1; i<=i3; i++) cout<<"@"<<" "; cout<<endl; } int main() { int rzad1[10], rzad2[10], rzad3[10];; int rzad, ilosc; int i, i1=0, i2=0, i3=0, gracz1, gracz2, numer=0; srand(time(NULL)); for(i=0; i<10; i++) { rzad1=rand()%2; if(rzad1==1) i1++; } for(i=0; i<10; i++) { rzad2=rand()%2; if (rzad2==1) i2++; } for(i=0; i<10; i++) { rzad3=rand()%2; if (rzad3==1) i3++; } wyswietl(i1,i2,i3); //cout<<i1<<endl; //cout<<i2<<endl; //cout<<i3<<endl;
while((i1+i2+i3)>0) { numer++; if (numer%2==0) { cout<<"Komputer"<<endl;
rzad=1+rand()%(3); // cout<<rzad<<endl; ilosc=(1+rand()%10); // cout<<ilosc<<endl;
} else { cout<<"Gracz"<<endl; cout<<"podaj numer wiersza i ile zabierasz"<<endl; cin>>rzad; cin>>ilosc; } if (rzad==1) i1=i1-ilosc; if(i1<=0) i1=0; if (rzad==2) i2=i2-ilosc; if(i2<=0) i2=0; if (rzad==3) i3=i3-ilosc; if(i3<=0) i3=0; wyswietl(i1,i2,i3); if(i1+i2+i3==0) cout<<"WYGRANA!!"<<endl; } return 0; }
|
|
DejaVu |
» 2021-03-29 19:49:50 Oczekujesz rozwiązania czy wskazówki? Bo jak wskazówki to w kursie masz wszystko (w tym jak losować liczby). |
|
« 1 » |