
Добавил:
ohpetya
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Исходный код / ComputerMove
.c#include <stdio.h>
#include <stddef.h>
int ComputerMove(char field[3][3])
{
int flag = 0;
if (field == NULL)
{
return 1;
}
for (size_t i = 0; i < 3; i++)
{
for (size_t j = 0; j < 3; j++)
{
if (field[i][j] == '_')
{
flag = 1;
break;
}
}
if (flag==1) break;
}
for (size_t i = 0; i < 3; i++)
{
if (field[i][0] == field[i][1] && field[i][2] == '_' && field[i][0] == '0')
{
field[i][2] = '0';
return 3;
}
if (field[i][0] == field[i][2] && field[i][1] == '_' && field[i][0] == '0')
{
field[i][1] = '0';
return 3;
}
if (field[i][1] == field[i][2] && field[i][0] == '_' && field[i][2] == '0')
{
field[i][0] = '0';
return 3;
}
if (field[0][i] == field[1][i] && field[2][i] == '_' && field[1][i] == '0')
{
field[2][i] = '0';
return 3;
}
if (field[0][i] == field[2][i] && field[1][i] == '_' && field[2][i] == '0')
{
field[1][i] = '0';
return 3;
}
if (field[1][i] == field[2][i] && field[0][i] == '_' && field[2][i] == '0')
{
field[0][i] = '0';
return 3;
}
}
for (size_t i = 0; i < 3; i++)
{
if (field[i][0] == field[i][1] && field[i][2] == '_' && field[i][0] == 'X')
{
field[i][2] = '0';
return 3;
}
if (field[i][0] == field[i][2] && field[i][1] == '_' && field[i][0] == 'X')
{
field[i][1] = '0';
return 3;
}
if (field[i][1] == field[i][2] && field[i][0] == '_' && field[i][2] == 'X')
{
field[i][0] = '0';
return 3;
}
if (field[0][i] == field[1][i] && field[2][i] == '_' && field[1][i] == 'X')
{
field[2][i] = '0';
return 3;
}
if (field[0][i] == field[2][i] && field[1][i] == '_' && field[2][i] == 'X')
{
field[1][i] = '0';
return 3;
}
if (field[1][i] == field[2][i] && field[0][i] == '_' && field[2][i] == 'X')
{
field[0][i] = '0';
return 3;
}
}
if (field[0][0] == field[1][1] && field[2][2] == '_' && field[1][1] == '0')
{
field[2][2] = '0';
return 3;
}
if (field[0][0] == field[2][2] && field[1][1] == '_' && field[2][2] == '0')
{
field[1][1] = '0';
return 3;
}
if (field[2][2] == field[1][1] && field[0][0] == '_' && field[1][1] == '0')
{
field[0][0] = '0';
return 3;
}
if (field[0][2] == field[1][1] && field[2][0] == '_' && field[1][1] == '0')
{
field[2][0] = '0';
return 3;
}
if (field[0][2] == field[2][0] && field[1][1] == '_' && field[2][0] == '0')
{
field[1][1] = '0';
return 3;
}
if (field[2][0] == field[1][1] && field[0][2] == '_' && field[1][1] == '0')
{
field[0][2] = '0';
return 3;
}
if (field[0][0] == field[1][1] && field[2][2] == '_' && field[1][1] == 'X')
{
field[2][2] = '0';
return 3;
}
if (field[0][0] == field[2][2] && field[1][1] == '_' && field[2][2] == 'X')
{
field[1][1] = '0';
return 3;
}
if (field[2][2] == field[1][1] && field[0][0] == '_' && field[1][1] == 'X')
{
field[0][0] = '0';
return 3;
}
if (field[0][2] == field[1][1] && field[2][0] == '_' && field[1][1] == 'X')
{
field[2][0] = '0';
return 3;
}
if (field[0][2] == field[2][0] && field[1][1] == '_' && field[2][0] == 'X')
{
field[1][1] = '0';
return 3;
}
if (field[2][0] == field[1][1] && field[0][2] == '_' && field[1][1] == 'X')
{
field[0][2] = '0';
return 3;
}
int MoveIndex = rand()%9;
while (field[MoveIndex/3][MoveIndex%3] != '_')
{
MoveIndex = rand()%9;
}
field[MoveIndex / 3][MoveIndex % 3] = '0';
return 3;
}
Соседние файлы в папке Исходный код