Created
July 15, 2018 21:19
-
-
Save loonylou/60a0e5627d0a9ca0d5989d9fe76cf9bb to your computer and use it in GitHub Desktop.
Battleship in Python
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from random import randint | |
# build a 5x5 board of Os | |
board = [] | |
for x in range(5): | |
board.append(["O"] * 5) | |
def print_board(board): | |
for row in board: | |
print " ".join(row) | |
print_board(board) | |
# place a battleship | |
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) | |
# check guess against battleship location | |
for turn in range(4): | |
print "Turn", turn + 1 | |
guess_row = int(raw_input("Guess Row: ")) | |
guess_col = int(raw_input("Guess Col: ")) | |
# if guess matches position | |
if guess_row == ship_row and guess_col == ship_col: | |
print "Congratulations! You sunk my battleship!" | |
break | |
# if guess doesn't match position | |
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_board(board) | |
if(turn == 3): | |
print "Game Over" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment