π ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΊΡΠ΅ΡΡΠΈΠΊΠ°Ρ -Π½ΠΎΠ»ΠΈΠΊΠ°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python?
def check_win(board, player):
win_conditions = [
[0, 1, 2], [3, 4, 5], [6, 7, 8], # ΠΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ
[0, 3, 6], [1, 4, 7], [2, 5, 8], # ΠΠ΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ
[0, 4, 8], [2, 4, 6] # ΠΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ
]
for condition in win_conditions:
if all(board[i] == player for i in condition):
return True
return False
# ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ check_win:
game_board = ['X', 'O', 'X', 'O', 'X', 'O', '', '', '']
current_player = 'X'
if check_win(game_board, current_player):
print('ΠΠ³ΡΠΎΠΊ', current_player, 'ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»!')
else:
print('ΠΠΈΡΡΡ ΠΈΠ»ΠΈ ΠΈΠ³ΡΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ.')
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΈΠ³ΡΠ΅ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ" Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python
ΠΠ³ΡΠ° "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ" - ΡΡΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π½Π°ΡΡΠΎΠ»ΡΠ½Π°Ρ ΠΈΠ³ΡΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄Π²Π° ΠΈΠ³ΡΠΎΠΊΠ° ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΡΡΠ°Π²ΡΡ ΡΠ²ΠΎΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ (ΠΊΡΠ΅ΡΡΠΈΠΊ ΠΈΠ»ΠΈ Π½ΠΎΠ»ΠΈΠΊ) Π½Π° ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Π¦Π΅Π»Ρ ΠΈΠ³ΡΡ - Π²ΡΡΡΡΠΎΠΈΡΡ ΡΠ²ΠΎΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² ΡΡΠ΄ (ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ, Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ) Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π΅Ρ ΡΠΎΠΏΠ΅ΡΠ½ΠΈΠΊ.
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΈΠ³ΡΠ΅ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ" Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python.
1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΏΠΎΠ±Π΅Π΄Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ. ΠΡΠ΅ΡΡΠΈΠΊΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ "X", Π° Π½ΠΎΠ»ΠΈΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ "O". ΠΠ°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
game_board = [["-", "-", "-"],
["-", "-", "-"],
["-", "-", "-"]]
2. ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ±Π΅Π΄Ρ
ΠΠ»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΈΠ³ΡΠ΅ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ" Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΏΠΎΠ±Π΅Π΄Ρ.
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠΎΠ±Π΅Π΄Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΡΠΎΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² ΡΡΠ΄. ΠΡΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΡΠΎΠΊΠΈ, ΡΡΠΎΠ»Π±ΡΡ ΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ. ΠΡΠ»ΠΈ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² "X" ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² "O", ΡΠΎ ΠΈΠ³ΡΠΎΠΊ, ΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΎΠ±ΡΠ°Π·ΡΡΡ ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ, ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Π΅ΠΌ.
def check_win(board):
# ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΡΡΠΎΠΊ
for row in board:
if row[0] == row[1] == row[2] and row[0] != "-":
return True
# ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ²
for col in range(3):
if board[0][col] == board[1][col] == board[2][col] and board[0][col] != "-":
return True
# ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π΅ΠΉ
if board[0][0] == board[1][1] == board[2][2] and board[0][0] != "-":
return True
if board[0][2] == board[1][1] == board[2][0] and board[0][2] != "-":
return True
return False
3. ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΈΠ³ΡΠ΅ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ", ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ check_win, ΠΏΠ΅ΡΠ΅Π΄Π°Π² Π΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ.
# ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
game_board = [["X", "O", "-"],
["X", "O", "-"],
["X", "-", "-"]]
if check_win(game_board):
print("ΠΠΎΠ±Π΅Π΄Π°!")
else:
print("ΠΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ Π½Π΅Ρ.")
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΈΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΊΡΠ΅ΡΡΠΈΠΊΠΎΠ² Π² Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ "ΠΠΎΠ±Π΅Π΄Π°!". ΠΡΠ»ΠΈ Π±Ρ Π²ΡΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ Π±ΡΠ»ΠΈ ΠΏΡΡΡΡΠΌΠΈ ΠΈΠ»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π±Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ "ΠΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ Π½Π΅Ρ."
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠΎΠ±Π΅Π΄Ρ Π² ΠΈΠ³ΡΠ΅ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ" Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π°Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΏΠΎΠ±Π΅Π΄ΠΈΡΠ΅Π»Ρ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ.
Π£Π΄Π°ΡΠΈ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΈΠ³ΡΡ "ΠΡΠ΅ΡΡΠΈΠΊΠΈ-Π½ΠΎΠ»ΠΈΠΊΠΈ"!