oto tresc zadania
napisać grę kółko i krzyżyk. Informacje o stanie gry powinny być zapisywane w tablicy dwuwymiarowej stworzonej przy użyciu tablicy wskaźników:
char * plansza[3];
W programie proszę wyodrębnić przynajmniej dwie funkcje: wyświetlającą planszę (proszę przekazać planszę do funkcji przy użyciu wskaźnika) oraz funkcję sprawdzającą czy jeden z graczy wygrał.
kod programu
#include
#include "moja.h"
#include
using namespace std;
void wyswietl(char **plansza){
char gracz1[15],gracz2[15];
cout<<"podaj imie 1 gracza\n";
cin>>gracz1;
cout<<"podaj imie 2 gracza\n";
cin>>gracz2;
for ( int i =0; i<3; i++){
plansza[i] = new char [3] ;
for ( int j =0; j<3; j++) {
plansza [i] [j]=' ' ;
}
}
cout<<" 1 2 3"<
int k=1;
for ( int i =0; i<3; i++) {
cout<
for ( int j =0; j<3; j++) {
cout << plansza [i] [j]<<"|";
}
cout <
}
gra(plansza,gracz1,gracz2);
}
void gra(char **plansza,char *gracz1,char *gracz2){
int x,y;
while(1){
while(1){
cout<
cout<<"podaj wspolrzedne: ";
cin>>x;
cin>>y;
if(x<1 || x>3 || y<1 || y>3)continue;
//if(czy_zajete(plansza,x,y)==0)continue;
else break;
}
plansza[y][x]='X';
cout<<" 1 2 3";
for(int i=1;i<=3;i++){
cout<
cout<
for(int j=1;j<=3;j++){
cout<
}
}
cout<
if(sprX(plansza,*gracz1)==1)break;
while(1){
cout<
cout<<"podaj wspolrzedne: ";
cin>>x;
cin>>y;
if(x<1 || x>3 || y<1 || y>3)continue;
//if(czy_zajete(plansza,x,y)==0)continue;
else break;
}
plansza[x][y]='O';
cout<<" 1 2 3";
for(int i=1;i<=3;i++){
cout<
cout<
for(int j=1;j<=3;j++){
cout<
}
}
cout<
if(sprO(plansza,*gracz2)==1)break;
if(remis(plansza)==0){cout<<"REMIS"<
continue;
}
}
/* int czy_zajete(char **plansza, int x, int y){
bool c=true;
cout<
if(plansza[x][y]!=' ')c=false;
return c;
}*/
// NAD TYM JESZCZE PRACUJE
int remis(char **plansza)
{
int f=0;
for(int i=1;i<=3;i++){
for(int j=1;j<=3;j++){
if(plansza[i][j]==' ')f++;
}
}
return f;
}[/code]
kod dostepny takze tutaj
(uważam ze lepiej się przegląda )
- czemu jak odkomentuje warunek sprawdzania czy pole jest juz zajęte ( na chwile obecna mozna nadpisywac ruch przeciwnika) nie moge wpisac współrzędnych z 3? typu [][3] || [3][]
dziekuje za pomoc