In a game of Go two players take turns to place black and white stones on a game board. The winner is the player who manages to encircle a bigger area on the board with their own game pieces. Please write a function named who_won (game_board: list), which takes a two- dimensional array as its argument. The array consists of integer values, which represent the following situations: . 0: empty square • 1: player 1 game piece 2: player 2 game piece ●

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 16PE
icon
Related questions
Question

Can you use Python programming language to to this question?

Thanks

In a game of Go two players take turns to place black and white stones on a game board.
The winner is the player who manages to encircle a bigger area on the board with their
own game pieces.
Please write a function named who_won (game_board: list), which takes a two-
dimensional array as its argument. The array consists of integer values, which represent
the following situations:
• 0: empty square
• 1: player 1 game piece
• 2: player 2 game piece
Transcribed Image Text:In a game of Go two players take turns to place black and white stones on a game board. The winner is the player who manages to encircle a bigger area on the board with their own game pieces. Please write a function named who_won (game_board: list), which takes a two- dimensional array as its argument. The array consists of integer values, which represent the following situations: • 0: empty square • 1: player 1 game piece • 2: player 2 game piece
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Follow-up Questions
Read through expert solutions to related follow-up questions below.
Follow-up Question

Hi! I get this error message with this code. Can you help me?

# Write your solution here
def who_won(game_board):
    # Initialize counters for each player's encircled area
    player1_area = 0
    player2_area = 0
   
    # Iterate through each square in the game board
    for i in range(len(game_board)):
        for j in range(len(game_board[i])):
            # Check if the square is encircled by player 1's game pieces
            if game_board[i][j] == 1:
                # Check if all four surrounding squares are also player 1's game pieces
                if (i > 0 and game_board[i-1][j] == 1) and (i < len(game_board)-1 and game_board[i+1][j] == 1) and (j > 0 and game_board[i][j-1] == 1) and (j < len(game_board[i])-1 and game_board[i][j+1] == 1):
                    player1_area += 1
            # Check if the square is encircled by player 2's game pieces
            elif game_board[i][j] == 2:
                # Check if all four surrounding squares are also player 2's game pieces
                if (i > 0 and game_board[i-1][j] == 2) and (i < len(game_board)-1 and game_board[i+1][j] == 2) and (j > 0 and game_board[i][j-1] == 2) and (j < len(game_board[i])-1 and game_board[i][j+1] == 2):
                    player2_area += 1
   
    # Determine the winner based on encircled area
    if player1_area > player2_area:
        return "Player 1 won!"
    elif player2_area > player1_area:
        return "Player 2 won!"
    else:
        return "It's a tie!"
FAIL:
GoTest:
test_2_type_of_return_value
Function who won does not return value of string type
with the parameter values [[1¹]], 1.
FAIL:
GoTest: test_3_ready_made_boards
1 != "It's a tie!" : The result It's a tie! does not
match with the model solution 1 when the matrice is
[[1, 2, 1], [0, 0, 1], [2, 1, 0]]
FAIL:
GoTest: test_4_random_boards
0 != "It's a tie!" : The result It's a tie! does not
match with the model solution when the matrice is
[[0, 2, 1, 0, 0, 1, 1], [2, 2, 2, 0, 2, 2, 0], [0, 0,
1, 1, 1, 0, 2], [2, 0, 1, 2, 2, 2, 1], [2, 0, 0, 0, 1,
1, 1], [1, 0, 2, 1, 2, 1, 0], [1, 1, 0, 2, 1, 2, 2]]
Transcribed Image Text:FAIL: GoTest: test_2_type_of_return_value Function who won does not return value of string type with the parameter values [[1¹]], 1. FAIL: GoTest: test_3_ready_made_boards 1 != "It's a tie!" : The result It's a tie! does not match with the model solution 1 when the matrice is [[1, 2, 1], [0, 0, 1], [2, 1, 0]] FAIL: GoTest: test_4_random_boards 0 != "It's a tie!" : The result It's a tie! does not match with the model solution when the matrice is [[0, 2, 1, 0, 0, 1, 1], [2, 2, 2, 0, 2, 2, 0], [0, 0, 1, 1, 1, 0, 2], [2, 0, 1, 2, 2, 2, 1], [2, 0, 0, 0, 1, 1, 1], [1, 0, 2, 1, 2, 1, 0], [1, 1, 0, 2, 1, 2, 2]]
Solution
Bartleby Expert
SEE SOLUTION
Knowledge Booster
Array
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,