Загрузка...

Tic-tac-toe in c++

Thread in C/C++ created by Zheka2017 Apr 8, 2019. 337 views

  1. Zheka2017
    Zheka2017 Topic starter Apr 8, 2019 2 Mar 11, 2017
    Помогите защитить клетку от перезаписи другим игроком.
    И написать функцию Check(), которая проверяет выиграшные комбинации, и определяет ничью.
    Буду очень благодарен!
    Вот код:
    Code

    #include<iostream>
    #include<conio.h>
    using namespace std;

    #define vert_line (char)179
    #define horiz_line (char)196
    #define cross (char)197
    #define middle "\n\n\n\n\n\n\n\n\n"


    void ASCII()
    {
    for (int i = 0; i < 256; i++)
    {
    cout << i << "\t" << (char)i << endl;
    }
    }
    void PrintField(char Field[], const int n, char Player);
    void Move(char Field[], const int n, char Player);


    void main()
    {
    const int n = 9;
    char Field[n] = {};
    PrintField(Field, n, 'X');
    //ASCII();
    }

    void PrintField(char Field[], const int n, char Player)
    {
    system("CLS"); //Очистка экрана
    cout << middle;
    for (int i = 6; i >= 0; i -= 3)
    {
    cout.width(50);
    for (int j = 0; j < 3; j++)
    {
    if (j != 0)cout << vert_line;
    cout << " " << Field[i + j] << " ";
    }
    cout << endl;
    if (i != 0)
    {
    cout.width(50);
    cout << horiz_line << horiz_line << horiz_line << cross;
    cout << horiz_line << horiz_line << horiz_line << cross;
    cout << horiz_line << horiz_line << horiz_line;
    cout << endl;
    }
    }
    Move(Field, n, Player);
    }
    void Move(char Field[], const int n, char Player)
    {
    char key;
    do
    {
    key = getch();
    if (key == 27)return; //При нажатии Escape - выход из рекурсии.
    if (key < '1' || key > '9')
    cout << "Error\a" << endl;
    } while (key < '1' || key > '9');
    Field[key - 49] = Player;
    if (Player == 'X')PrintField(Field, n, '0');
    else PrintField(Field, n, 'X');
    }
     
  2. Пифагор
    Лучше на киберфорум наптши, там быстрее ответят
     
  3. Zheka2017
    Zheka2017 Topic starter Apr 8, 2019 2 Mar 11, 2017
    не помог мне киберфорум
     
  4. Пифагор
    Zheka2017, лучше в ЛС кодерам напиши
     
  5. Zheka2017
    Zheka2017 Topic starter Apr 8, 2019 2 Mar 11, 2017
  6. Пифагор
  7. SaintMurder_inactive629492
    Ещё актуально?Если да,пиши в ТГ - @mmr383
     
  8. TodGluck
    TodGluck May 7, 2019 7 Apr 21, 2019
    а так можно что-ли ?4
     
Loading...
Top