Skip to content

Commit e06a076

Browse files
authored
Add files via upload (#264)
Add Tic Tac Toe
1 parent 7ce827b commit e06a076

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed

Tic Tac Toe/Tic Tac Toe.py

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
def sum(a, b, c ):
2+
return a + b + c
3+
4+
def printBoard(xState, zState):
5+
zero = 'X' if xState[0] else ('O' if zState[0] else 0)
6+
one = 'X' if xState[1] else ('O' if zState[1] else 1)
7+
two = 'X' if xState[2] else ('O' if zState[2] else 2)
8+
three = 'X' if xState[3] else ('O' if zState[3] else 3)
9+
four = 'X' if xState[4] else ('O' if zState[4] else 4)
10+
five = 'X' if xState[5] else ('O' if zState[5] else 5)
11+
six = 'X' if xState[6] else ('O' if zState[6] else 6)
12+
seven = 'X' if xState[7] else ('O' if zState[7] else 7)
13+
eight = 'X' if xState[8] else ('O' if zState[8] else 8)
14+
print(f"{zero} | {one} | {two} ")
15+
print(f"--|---|---")
16+
print(f"{three} | {four} | {five} ")
17+
print(f"--|---|---")
18+
print(f"{six} | {seven} | {eight} ")
19+
20+
def checkWin(xState, zState):
21+
wins = [[0, 1, 2], [3, 4, 5], [6, 7, 8], [0, 3, 6], [1, 4, 7], [2, 5, 8], [0, 4, 8], [2, 4, 6]]
22+
for win in wins:
23+
if(sum(xState[win[0]], xState[win[1]], xState[win[2]]) == 3):
24+
print("X Won the match")
25+
return 1
26+
if(sum(zState[win[0]], zState[win[1]], zState[win[2]]) == 3):
27+
print("O Won the match")
28+
return 0
29+
return -1
30+
31+
if __name__ == "__main__":
32+
xState = [0, 0, 0, 0, 0, 0, 0, 0, 0]
33+
zState = [0, 0, 0, 0, 0, 0, 0, 0, 0]
34+
turn = 1 # 1 for X and 0 for O
35+
print("Welcome to Tic Tac Toe")
36+
while(True):
37+
printBoard(xState, zState)
38+
if(turn == 1):
39+
print("X's Chance")
40+
value = int(input("Please enter a value: "))
41+
xState[value] = 1
42+
else:
43+
print("O's Chance")
44+
value = int(input("Please enter a value: "))
45+
zState[value] = 1
46+
cwin = checkWin(xState, zState)
47+
if(cwin != -1):
48+
print("Match over")
49+
break
50+
51+
turn = 1 - turn

0 commit comments

Comments
 (0)