Advertisement
Guest User

крестики-нолики

a guest
Jan 29th, 2015
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.82 KB | None | 0 0
  1. def ended():
  2.     if board[0][0] == board[0][1] == board[0][2] != '*' or board[1][0] == board[1][1] == board[1][2] != '*' or board[2][0] == board[2][1] == board[2][2] != '*' or board[0][0] == board[1][1] == board[2][2] != '*' or board[2][0] == board[1][1] == board[0][2] != '*' or board[0][0] == board[1][0] == board[2][0] != '*' or board[0][1] == board[1][1] == board[2][1] != '*' or board[0][2] == board[1][2] == board[2][2] != '*':
  3.         return True
  4.     return False
  5.  
  6. def print_board():
  7.     print('  1 2 3\n1 ', ' '.join(board[0]), '\n2 ', ' '.join(board[1]), '\n3 ', ' '.join(board[2]), sep = '')
  8.    
  9. def move():
  10.     print('\n' * 55, 'Ход игрока №', move_num + 1, sep = '')
  11.     print_board()
  12.     print('Ваш ход: ', end = '')
  13.     x, y = map(int, input().split())
  14.     x, y = x - 1, y - 1
  15.     while board[x][y] != '*':
  16.         print('\n' * 55)
  17.         print('Выбранная вами клетка занята, выберите другую')
  18.         print_board()
  19.         print('Ваш ход: ', end = '')
  20.         x, y = map(int, input().split())
  21.         x, y = x - 1, y - 1
  22.     if move_num == 0:
  23.         board[x][y] = 'X'
  24.     else:
  25.         board[x][y] = 'O'
  26.     return
  27.    
  28. #подготовка игры
  29.  
  30. board =[['*', '*', '*'], ['*', '*', '*'], ['*', '*', '*']]
  31. #print(board)
  32. end = False
  33. move_num = 1
  34.  
  35. #начало игры
  36.  
  37. print('\n' * 55)
  38. print('Справка: в свой ход введите номер строки и номер столбца клетки, в которую вы хотите сделать ход через пробел\nНажмите Enter что бы продолжить')
  39. input()
  40. end = False
  41. while end != True:
  42.     move_num = (move_num + 1) % 2
  43.     move()
  44.     end = ended()
  45. print('\n' * 55)
  46. print('Игрок', move_num + 1, 'выиграл!')
  47. print_board()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement