Help on battleship


pls look my code below i thought it was perfect but it keep giving me the error message>"Did you add your if statement with the “Game Over” message?"you can try the code for ur self:(pls look carefully on the “Game over part”)
from random import randint

board = []

for x in range(5):
board.append([“O”] * 5)

def print_board(board):
for row in board:
print " ".join(row)


def random_row(board):
return randint(0, len(board) - 1)

def random_col(board):
return randint(0, len(board[0]) - 1)

ship_row = random_row(board)
ship_col = random_col(board)
print ship_row
print ship_col

Everything from here on should go in your for loop!

Be sure to indent four spaces!

for turn in range(4):
guess_row = int(raw_input("Guess Row: "))
guess_col = int(raw_input("Guess Col: "))

if guess_row == ship_row:
if guess_col == ship_col:
print “Congratulations! You sunk my battleship!”
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
print “Oops, that’s not even in the ocean.”

elif(board[guess_row][guess_col] == "X"):
  print "You guessed that one already."
  print "You missed my battleship!"
  board[guess_row][guess_col] = "X"
                   if turn==3:
    print "Game over"    

print "Turn ",(turn+1)

Print (turn + 1) here!



Over should have a capitalized first letter


OMG! Tnx i never thought that would be a problem.ur life saver tnx.


string printed or returned need to be exact match, which is why usually copy strings from the instructions, to prevent this kind of mistake.


This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.