Tic-tac-toe: Difference between revisions
Content deleted Content added
m →{{header|REXX}}: changed wording in the REXX section preamble. |
|||
Line 2,420:
linewidth 2
textsize 14
#
func
color 999
move 0 0
Line 2,445 ⟶ 2,436:
line 68 48
.
func
call draw_new
for i range 9
f[i] = 0
.
if randomf < 0.5
state = 0
else
state = 1
timer 0.5
.
.
func draw ind . .
c = ind mod 3
r = ind / 3
x = c * 24 + 12
y = r * 24 + 12
if f[ind] = 4
color 900
move x - 7 y - 7
line x + 7 y + 7
move x + 7 y - 7
line x - 7 y + 7
elif f[ind] = 1
color 009
move x y
circle 9
color 999
circle 7
.
.
func
for i range 3
s += f[a]
Line 2,473:
.
if s = 3
st = -1
elif s = 12
st =
.
.
func
res = 0
for i range 3
call
.
for i range 3
call
.
call
call
for i range 9
if f[i] = 0
.
.
.
.
func
if rval
if
.
else
rval = alpha
start = random 9
mov = start
while mov <> -1
if f[mov] = 0
f[mov] = player
call minmax 5 - player 0 - beta 0 - rval val h
val = -val
f[mov] = 0
if val > rval
rval = val
if rval >= beta
mov = start - 1
else
rmov = mov
.
.
.
mov = (mov + 1) mod 9
if mov = start
mov = -1
.
.
.
.
func show_result val . .
color 000
move 5 76
if
text "You won"
elif val = 1
text "You lost"
else
text "Tie"
.
state = 2
.
func computer . .
call minmax 4 -2 2 val mov
f[mov] = 4
call draw mov
if val < 2
call show_result val
else
.
.
func human . .
if f[
f[
call
call
if
else
state = 1
timer 0.5
.
Line 2,557 ⟶ 2,570:
.
on mouse_down
if
if mouse_x < 72 and mouse_y < 72
call human
.
elif
call init
.
|