Master_Profi
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Реализовать игру "крестики-нолики" на поле размером 3х3 используя двумерные массивы. int main () { int x,y,a,b; // Ob'avlyaem pole i vivodim ego na ekran int tablo[4][4] = { 0,1,2,3, 1,8,8,8, 2,8,8,8, 3,8,8,8}; for ( int i = 0; i < 4; i++) { for ( int j = 0; j < 4; j++) { cout << tablo[i][j]<< " "; if ( j == 3 ) cout << endl; } } // Xod pervogo igroka while (1) { // Otkrivaem skobky obshego cikla, dlya dvoix igrokov!! cout << "Igrok1, vvedite koordinati(x,y): "; cin >> x >> y; tablo[x][y] = 1; for ( int i = 0; i < 4; i++ ) for ( int j = 0; j < 4; j++ ) { cout << tablo[i][j]<< " "; if ( j == 3 ) cout<< endl; } // Proverka na vyigrish!! if ( tablo[x][1] == tablo[x][2] == tablo[x][3] == tablo[x][y] ) { cout <<"Igrok 1-yi vyigral!! ";break; } if ( tablo[1][y] == tablo[2][y] == tablo[3][y] == tablo[x][y] ) { cout <<"Igrok 1-yi vyigral!! ";break; } if ( tablo[1][1] == tablo[2][2] == tablo[3][3] == tablo[x][y] ) { cout <<"Igrok 1-yi vyigral!! ";break; } if ( tablo[3][1] == tablo[2][2] == tablo[1][3] == tablo[x][y] ) { cout <<"Igrok 1-yi vyigral!! ";break; } // Xod vtorogo igroka cout << "Igrok2, vvedite koordinati(x,y): "; cin >> a >> b; cout << endl; while (a == x && b == y) { cout <<"Koordinati sovpadaut s pervim igrokom, vvedite eshe raz: "; cin >> a >> b; } tablo[a][b] = 0; for ( int i = 0; i < 4; i++ ) for ( int j = 0; j < 4; j++ ) { cout << tablo[i][j]<< " "; if ( j == 3 ) cout<< endl; } // Proverka na vyigrish!! if ( tablo[a][1] == tablo[a][2] == tablo[a][3] == tablo[a][b] ) { cout <<"Igrok 2-oi vyigral!!!!!"<<endl;break; } if ( tablo[1][b] == tablo[2][b] == tablo[3][b] == tablo[a][b] ) { cout <<"Igrok 2-oi vyigral!!"<<endl;break; } if ( tablo[1][1] == tablo[2][2] == tablo[3][3] == tablo[a][b] ) { cout <<"Igrok 2-oi vyigral!!"<<endl;break; } if ( tablo[3][1] == tablo[2][2] == tablo[1][3] == tablo[a][b] ) { cout <<"Igrok 2-oi vyigral!!"<<endl;break; } } system("pause"); } вот мой код программы, сколько не бился, не могу заставить программу корректно работать, заходит в компилятор нормально, но когда ,например, ввожу для первого игрока координаты 1;3 - то на это место ставится 1-а! НО после этого сразу пишет мол первый игрок выиграл и выходит из программы, почему так, кто может подсказать?? |