Advertisement
1nikitas

Untitled

Mar 20th, 2022
683
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.90 KB | None | 0 0
  1. class TicTacToeBoard:
  2.     def new_game(self):
  3.         self.field = [['-', '-', '-'], ['-', '-', '-'], ['-', '-', '-']]
  4.         self.k = 0
  5.         self.b = ''
  6.         self.n = False
  7.  
  8.     def get_field(self):
  9.         return self.field
  10.  
  11.     def __init__(self):
  12.         self.field = [['-', '-', '-'], ['-', '-', '-'], ['-', '-', '-']]
  13.         self.k = 0
  14.         self.b = ''
  15.         self.n = False
  16.  
  17.     def make_move(self, row, col):
  18.         if self.field[row - 1][col - 1] != ('X' or '0'):
  19.             if self.k % 2 == 0:
  20.                 self.field[row - 1][col - 1] = 'X'
  21.             else:
  22.                 self.field[row - 1][col - 1] = '0'
  23.             self.k += 1
  24.             if self.b == '':
  25.                 if self.check_field() == 'X':
  26.                     self.n = True
  27.                     return self.b
  28.                 elif self.check_field() == '0':
  29.                     self.n = True
  30.                     return self.b
  31.                 else:
  32.                     return 'Продолжаем играть'
  33.         if self.n:
  34.             return 'Игра уже завершена'
  35.         else:
  36.             return 'Клетка' + ' ' + str(row) + ',' + ' ' + str(col) + ' ' + 'уже занята'
  37.  
  38.     def check_field(self):
  39.         for i in self.field:
  40.             if self.field[0][0] == self.field[0][1] == self.field[0][2] == 'X':
  41.                 self.b = 'Победил игрок X'
  42.                 return 'X'
  43.             if self.field[1][0] == self.field[1][1] == self.field[1][2] == 'X':
  44.                 self.b = 'Победил игрок X'
  45.                 return 'X'
  46.             if self.field[2][0] == self.field[2][1] == self.field[2][2] == 'X':
  47.                 self.b = 'Победил игрок X'
  48.                 return 'X'
  49.             if self.field[0][0] == self.field[1][1] == self.field[2][2] == 'X':
  50.                 self.b = 'Победил игрок X'
  51.                 return 'X'
  52.             if self.field[0][2] == self.field[1][1] == self.field[2][0] == 'X':
  53.                 self.b = 'Победил игрок X'
  54.                 return 'X'
  55.             if self.field[0][0] == self.field[1][0] == self.field[2][0] == 'X':
  56.                 self.b = 'Победил игрок X'
  57.                 return 'X'
  58.             if self.field[0][1] == self.field[1][1] == self.field[2][1] == 'X':
  59.                 self.b = 'Победил игрок X'
  60.                 return 'X'
  61.             if self.field[0][2] == self.field[1][2] == self.field[2][2] == 'X':
  62.                 self.b = 'Победил игрок X'
  63.                 return 'X'
  64.             if self.field[0][0] == self.field[0][1] == self.field[0][2] == '0':
  65.                 self.b = 'Победил игрок 0'
  66.                 return '0'
  67.             if self.field[1][0] == self.field[1][1] == self.field[1][2] == '0':
  68.                 self.b = 'Победил игрок 0'
  69.                 return '0'
  70.             if self.field[2][0] == self.field[2][1] == self.field[2][2] == '0':
  71.                 self.b = 'Победил игрок 0'
  72.                 return '0'
  73.             if self.field[0][0] == self.field[1][1] == self.field[2][2] == '0':
  74.                 self.b = 'Победил игрок 0'
  75.                 return '0'
  76.             if self.field[0][2] == self.field[1][1] == self.field[2][0] == '0':
  77.                 self.b = 'Победил игрок 0'
  78.                 return '0'
  79.             if self.field[0][0] == self.field[1][0] == self.field[2][0] == '0':
  80.                 self.b = 'Победил игрок 0'
  81.                 return '0'
  82.             if self.field[0][1] == self.field[1][1] == self.field[2][1] == '0':
  83.                 self.b = 'Победил игрок 0'
  84.                 return '0'
  85.             if self.field[0][2] == self.field[1][2] == self.field[2][2] == '0':
  86.                 self.b = 'Победил игрок 0'
  87.                 return '0'
  88.             else:
  89.                 return None
  90.  
  91.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement