Skip to content

Commit 6f722bf

Browse files
saved
0 parents  commit 6f722bf

File tree

3 files changed

+345
-0
lines changed

3 files changed

+345
-0
lines changed

Readme.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
This is a TIC TAC TOE game build using python
2+
3+
I used anaconda compiler which is one of the best python compiler
4+
5+
In this repo i also attached my source code as .txt file and also a
6+
.py(python file) You download it...
7+
8+
Happy coding folks...!!!

TicTacToe.ipynb

+236
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": 2,
6+
"metadata": {
7+
"collapsed": true
8+
},
9+
"outputs": [],
10+
"source": [
11+
"from IPython.display import clear_output\n",
12+
"from __future__ import print_function\n",
13+
"\n",
14+
"def display_board(board):\n",
15+
" clear_output()\n",
16+
" print(' | |')\n",
17+
" print(' ' + board[7] + ' | ' + board[8] + ' | ' + board[9])\n",
18+
" print(' | |')\n",
19+
" print('-----------')\n",
20+
" print(' | |')\n",
21+
" print(' ' + board[4] + ' | ' + board[5] + ' | ' + board[6])\n",
22+
" print(' | |')\n",
23+
" print('-----------')\n",
24+
" print(' | |')\n",
25+
" print(' ' + board[1] + ' | ' + board[2] + ' | ' + board[3])\n",
26+
" print(' | |')"
27+
]
28+
},
29+
{
30+
"cell_type": "code",
31+
"execution_count": 3,
32+
"metadata": {
33+
"collapsed": true
34+
},
35+
"outputs": [],
36+
"source": [
37+
"def choose():\n",
38+
" \n",
39+
" p1 = raw_input('CHOOSE x OR o?')\n",
40+
" if p1=='x':\n",
41+
" p2 = 'o'\n",
42+
" else:\n",
43+
" p2 ='x'\n",
44+
" return p1,p2"
45+
]
46+
},
47+
{
48+
"cell_type": "code",
49+
"execution_count": 4,
50+
"metadata": {
51+
"collapsed": true
52+
},
53+
"outputs": [],
54+
"source": [
55+
"def inp(board,p,pos):\n",
56+
" board[pos] = p"
57+
]
58+
},
59+
{
60+
"cell_type": "code",
61+
"execution_count": 5,
62+
"metadata": {
63+
"collapsed": true
64+
},
65+
"outputs": [],
66+
"source": [
67+
"def win(board,p):\n",
68+
" if((board[1]==p and board[2]==p and board[3] == p) or\n",
69+
" (board[1]==p and board[5]==p and board[9] == p) or\n",
70+
" (board[1]==p and board[4]==p and board[7] == p) or\n",
71+
" (board[3]==p and board[6]==p and board[9] == p) or\n",
72+
" (board[9]==p and board[8]==p and board[7] == p) or\n",
73+
" (board[8]==p and board[5]==p and board[2] == p) or \n",
74+
" (board[4]==p and board[5]==p and board[6] == p) or\n",
75+
" (board[7]==p and board[5]==p and board[3] == p)\n",
76+
" ):\n",
77+
" return True\n",
78+
" \n",
79+
" \n",
80+
" "
81+
]
82+
},
83+
{
84+
"cell_type": "code",
85+
"execution_count": 6,
86+
"metadata": {
87+
"collapsed": false
88+
},
89+
"outputs": [],
90+
"source": [
91+
"def start():\n",
92+
" (p1,p2) = choose()\n",
93+
" play = True\n",
94+
" board = [' ']*10\n",
95+
" turn ='p1'\n",
96+
" while play:\n",
97+
" if turn == 'p1':\n",
98+
" display_board(board)\n",
99+
" pos = int(raw_input('Enter The Position...'))\n",
100+
" while not check(board,pos):\n",
101+
" pos = int(raw_input('You Entered A Position Which Is Already Exist....Try Again!!!'))\n",
102+
" inp(board,p1,pos)\n",
103+
" if win(board,p1):\n",
104+
" display_board(board)\n",
105+
" print('PLAYER1 WON!!!') \n",
106+
" break\n",
107+
" else:\n",
108+
" if full(board):\n",
109+
" display_board(board)\n",
110+
" print('DRAW!!!')\n",
111+
" break \n",
112+
" turn = 'p2'\n",
113+
" else:\n",
114+
" turn = 'p1'\n",
115+
" display_board(board)\n",
116+
" pos = int(raw_input('Enter The Position...'))\n",
117+
" while not check(board,pos):\n",
118+
" pos = int(raw_input('You Entered A Position Which Is Already Exist....Try Again!!!'))\n",
119+
" inp(board,p2,pos)\n",
120+
" if win(board,p2):\n",
121+
" display_board(board)\n",
122+
" print('PLAYER2 WON!!!') \n",
123+
" break\n",
124+
" else:\n",
125+
" if full(board):\n",
126+
" display_board(board)\n",
127+
" print('DRAW!!!')\n",
128+
" break"
129+
]
130+
},
131+
{
132+
"cell_type": "code",
133+
"execution_count": 7,
134+
"metadata": {
135+
"collapsed": false
136+
},
137+
"outputs": [],
138+
"source": [
139+
"def check(board,pos):\n",
140+
" if board[pos] == ' ':\n",
141+
" return True"
142+
]
143+
},
144+
{
145+
"cell_type": "code",
146+
"execution_count": 8,
147+
"metadata": {
148+
"collapsed": true
149+
},
150+
"outputs": [],
151+
"source": [
152+
"\n",
153+
"def empty(board):\n",
154+
" if (board[1] == \" \" or board[2] == \" \" or board[3] == \" \" or board[4] == \" \" or board[5] == \" \" or board[6] == \" \" or board[7] == \" \" or board[8] == \" \" or board[9] == \" \"):\n",
155+
" return True\n",
156+
" "
157+
]
158+
},
159+
{
160+
"cell_type": "code",
161+
"execution_count": 9,
162+
"metadata": {
163+
"collapsed": true
164+
},
165+
"outputs": [],
166+
"source": [
167+
"def full(board):\n",
168+
" if empty(board):\n",
169+
" return False\n",
170+
" else:\n",
171+
" return True"
172+
]
173+
},
174+
{
175+
"cell_type": "code",
176+
"execution_count": 13,
177+
"metadata": {
178+
"collapsed": false
179+
},
180+
"outputs": [
181+
{
182+
"name": "stdout",
183+
"output_type": "stream",
184+
"text": [
185+
" | |\n",
186+
" | | x\n",
187+
" | |\n",
188+
"-----------\n",
189+
" | |\n",
190+
" | x | o\n",
191+
" | |\n",
192+
"-----------\n",
193+
" | |\n",
194+
" x | o | \n",
195+
" | |\n",
196+
"PLAYER1 WON!!!\n"
197+
]
198+
}
199+
],
200+
"source": [
201+
"start()"
202+
]
203+
},
204+
{
205+
"cell_type": "code",
206+
"execution_count": null,
207+
"metadata": {
208+
"collapsed": true
209+
},
210+
"outputs": [],
211+
"source": []
212+
}
213+
],
214+
"metadata": {
215+
"anaconda-cloud": {},
216+
"kernelspec": {
217+
"display_name": "Python [default]",
218+
"language": "python",
219+
"name": "python2"
220+
},
221+
"language_info": {
222+
"codemirror_mode": {
223+
"name": "ipython",
224+
"version": 2
225+
},
226+
"file_extension": ".py",
227+
"mimetype": "text/x-python",
228+
"name": "python",
229+
"nbconvert_exporter": "python",
230+
"pygments_lexer": "ipython2",
231+
"version": "2.7.12"
232+
}
233+
},
234+
"nbformat": 4,
235+
"nbformat_minor": 1
236+
}

TicTacToe.txt

+101
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
from IPython.display import clear_output
2+
from __future__ import print_function
3+
4+
def display_board(board):
5+
clear_output()
6+
print(' | |')
7+
print(' ' + board[7] + ' | ' + board[8] + ' | ' + board[9])
8+
print(' | |')
9+
print('-----------')
10+
print(' | |')
11+
print(' ' + board[4] + ' | ' + board[5] + ' | ' + board[6])
12+
print(' | |')
13+
print('-----------')
14+
print(' | |')
15+
print(' ' + board[1] + ' | ' + board[2] + ' | ' + board[3])
16+
print(' | |')
17+
18+
19+
def choose():
20+
21+
p1 = raw_input('CHOOSE x OR o?')
22+
if p1=='x':
23+
p2 = 'o'
24+
else:
25+
p2 ='x'
26+
return p1,p2
27+
28+
29+
def inp(board,p,pos):
30+
board[pos] = p
31+
32+
def win(board,p):
33+
if((board[1]==p and board[2]==p and board[3] == p) or
34+
(board[1]==p and board[5]==p and board[9] == p) or
35+
(board[1]==p and board[4]==p and board[7] == p) or
36+
(board[3]==p and board[6]==p and board[9] == p) or
37+
(board[9]==p and board[8]==p and board[7] == p) or
38+
(board[8]==p and board[5]==p and board[2] == p) or
39+
(board[4]==p and board[5]==p and board[6] == p) or
40+
(board[7]==p and board[5]==p and board[3] == p)
41+
):
42+
return True
43+
44+
45+
def start():
46+
(p1,p2) = choose()
47+
play = True
48+
board = [' ']*10
49+
turn ='p1'
50+
while play:
51+
if turn == 'p1':
52+
display_board(board)
53+
pos = int(raw_input('Enter The Position...'))
54+
while not check(board,pos):
55+
pos = int(raw_input('You Entered A Position Which Is Already Exist....Try Again!!!'))
56+
inp(board,p1,pos)
57+
if win(board,p1):
58+
display_board(board)
59+
print('PLAYER1 WON!!!')
60+
break
61+
else:
62+
if full(board):
63+
display_board(board)
64+
print('DRAW!!!')
65+
break
66+
turn = 'p2'
67+
else:
68+
turn = 'p1'
69+
display_board(board)
70+
pos = int(raw_input('Enter The Position...'))
71+
while not check(board,pos):
72+
pos = int(raw_input('You Entered A Position Which Is Already Exist....Try Again!!!'))
73+
inp(board,p2,pos)
74+
if win(board,p2):
75+
display_board(board)
76+
print('PLAYER2 WON!!!')
77+
break
78+
else:
79+
if full(board):
80+
display_board(board)
81+
print('DRAW!!!')
82+
break
83+
84+
85+
86+
def check(board,pos):
87+
if board[pos] == ' ':
88+
return True
89+
90+
def empty(board):
91+
if (board[1] == " " or board[2] == " " or board[3] == " " or board[4] == " " or board[5] == " " or board[6] == " " or board[7] == " " or board[8] == " " or board[9] == " "):
92+
return True
93+
94+
def full(board):
95+
if empty(board):
96+
return False
97+
else:
98+
return True
99+
100+
start()
101+

0 commit comments

Comments
 (0)