Play It Sam


#1

I dont understand, why after entering the first guess, all the turns are printed with the same guess and along with the board and it doesnt ask for second guess after the first guess. Can someone explain me ? below is the code

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)

print "Let's play Battleship!"
print_board(board)

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!
guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))

if guess_row == ship_row and guess_col == ship_col:
    print "Congratulations! You sunk my battleship!"
else:
    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."
    else:
        print "You missed my battleship!"
        board[guess_row][guess_col] = "X"
    # Print (turn + 1) here!
    print_board(board)
    
for turn in range(4):
    
    print "Turn", turn + 1
    #print_board(board)
    print ship_row
    print ship_col

#2

see this comments:

# Everything from here on should go in your for loop!
# Be sure to indent four spaces!

this is where the loop should start.


#3

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