A real win


#1

File "python", line 35
** break**
** ^**
IndentationError: unexpected indent

What excatly is wrong with 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:"))
for turn in range(4):
    turn = turn + 1
    print turn
if guess_row == ship_row and guess_col == ship_col:
    print "Congratulations! You sunk my battleship!"
    break
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."
    elif turn == 3:
        print "Game Over."
    else:
        print "You missed my battleship!"
        board[guess_row][guess_col] = "X"
    # Print (turn + 1) here!
print_board(board)

#2

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

lets see what is inside your loop:

for turn in range(4):
    turn = turn + 1
    print turn

that is by a long shot not everything from comments till end of file

we want to give the user multiply guesses and handle each guess, to do this, everything from the comments onward should be placed inside the loop


#3

I've tried different combinations now.... one of them worked!
Somehow they didn't work in the past.

Thank You!


#4

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