Can you please help complete this connect 4 game code using the attributes and methods provided and explain how you did it and what the functions are.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Can you please help complete this connect 4 game code using the attributes and methods provided and explain how you did it and what the functions are.

def main ():
widthSet = False
heightSet = False
while not widthSet:
try:
again.")
again.")
again.")
width = int(input("Enter the width of your game board (4-10):" ) )
if width >= 4 and width <= 10:
widthSet = True
else:
except:
while not heightSet:
try:
print("The width must be an integer from 4-10. Please try
print("The width must be an integer from 4-10. Please try again.")
height = int(input("Enter the height of your game board (4-10): "))
if height >= 4 and height <= 10:
heightSet = True
print("The height must be an integer from 4-10. Please try
except:
else:
print("The height must be an integer from 4-10. Please try
board Board (width, height)
allPlayersAdded = False
players = []
while not allPlayersAdded:
validName = False
while not validName:
name = input("Enter this player's name:")
validName = True
for player in players:
if player.getName() name:
Please try again.")
if name
main ()
validName = False
print("There is already a player called " + name +
if name == "Nobody":
validName = False
print("You cannot use the name \"Nobody\". Please try again.")
newPlayer = Player(name, len(players) + 1)
players.append(newPlayer)
print("Player " + str(newPlayer.getNumber()) + is:
if len (players) > 1 and len (players) < 4:
addMore = input("Keep adding players (y/n)")
elif len(players) == 4:
==
if addMore.lower() != "y" and addMore.lower() != "yes":
allPlayersAdded = True
allPlayersAdded = True
print ()
print("This game has " + str(len (players)) + players:")
for player in players:
print (player.getName())
game Over = False
winner = "Nobody"
while not gameOver:
for player in players:
print ()
print(player.getName() + "
board.display ( )
player.makeMove (board)
winner = player.checkWinner (board)
board.display()
input (winner + " wins the game!")
main ':
11
I it's your turn:")
if winner != "Nobody" or board.boardFull ():
game Over = True
break
+ name)
Transcribed Image Text:def main (): widthSet = False heightSet = False while not widthSet: try: again.") again.") again.") width = int(input("Enter the width of your game board (4-10):" ) ) if width >= 4 and width <= 10: widthSet = True else: except: while not heightSet: try: print("The width must be an integer from 4-10. Please try print("The width must be an integer from 4-10. Please try again.") height = int(input("Enter the height of your game board (4-10): ")) if height >= 4 and height <= 10: heightSet = True print("The height must be an integer from 4-10. Please try except: else: print("The height must be an integer from 4-10. Please try board Board (width, height) allPlayersAdded = False players = [] while not allPlayersAdded: validName = False while not validName: name = input("Enter this player's name:") validName = True for player in players: if player.getName() name: Please try again.") if name main () validName = False print("There is already a player called " + name + if name == "Nobody": validName = False print("You cannot use the name \"Nobody\". Please try again.") newPlayer = Player(name, len(players) + 1) players.append(newPlayer) print("Player " + str(newPlayer.getNumber()) + is: if len (players) > 1 and len (players) < 4: addMore = input("Keep adding players (y/n)") elif len(players) == 4: == if addMore.lower() != "y" and addMore.lower() != "yes": allPlayersAdded = True allPlayersAdded = True print () print("This game has " + str(len (players)) + players:") for player in players: print (player.getName()) game Over = False winner = "Nobody" while not gameOver: for player in players: print () print(player.getName() + " board.display ( ) player.makeMove (board) winner = player.checkWinner (board) board.display() input (winner + " wins the game!") main ': 11 I it's your turn:") if winner != "Nobody" or board.boardFull (): game Over = True break + name)
Player
-playerName
-playerNumber
+Player()
+getName()
+getNumber()
+makeMove()
+checkWinner()
Board
-columns
-rows
-board
+Board()
+display()
+columnFull()
+boardFull()
+getWidth()
+addToken()
+checkWinner()
-checkVertical()
-checkHorizontal()
-checkRight Diagonal()
-checkLeft Diagonal()
Transcribed Image Text:Player -playerName -playerNumber +Player() +getName() +getNumber() +makeMove() +checkWinner() Board -columns -rows -board +Board() +display() +columnFull() +boardFull() +getWidth() +addToken() +checkWinner() -checkVertical() -checkHorizontal() -checkRight Diagonal() -checkLeft Diagonal()
Expert Solution
steps

Step by step

Solved in 4 steps with 10 images

Blurred answer
Knowledge Booster
Database connectivity
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
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education