Bad Aim


Oops, try again. Make sure you print "Oops, that's not even in the ocean." if the user guesses a row or column that is off the board.

Replace this line with your code. 
from random import randint

board = []

for x in range(0, 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)
guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))

print ship_row
print ship_col

# Write your code below!
if (guess_row == ship_row) and (guess_col == ship_col):
    print "Congratulations! You sank my battleship"
elif (guess_row not in range(5)) or (guess_col not in range(5)):
     print "Oops, thats not even in the ocean!"
    print "You missed my battleship!"
    board[guess_row][guess_col] = "X"


Youre giving player 5 chances but problem stated that it should be 4 and also check the one of the if-else-if condition!


the string printed should be an exact match, you miss an apostrophe in that's


ya thanks for that. it struck me just after posting the doubt. thank you for your time!


Your code is Ok. I see one error, the string that you print out not match. Should be match with the Instructions.
Have fun!


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