matlab游戏编程实例(五子棋)

这是一个用matlab编写的子五棋游戏,供学习使用。

这是单机版的五子棋,做为学习用的一个matlab代码,两个人轮流下,电脑自动判别胜负。 此代码为realghost开发,如有转载,请保留这部分信息。

若要交流,请与 slqinyi@http://www.1mpi.com 联系

function five()

figure(1)

axis([0 12 0 12]);

hold on

axis off

for i = 1:11%»-ÆåÅÌ

line([1 11],[i i]);

line([i i],[1 11]);

end

axis equal

qishou = 1; % ÅжÏÆåÊÖµÄÑÕÉ«£¬¿ªÊ¼µÄʱºòÊǺìÉ«£¬È¡0ʱÊǺÚÉ«

boardstatus = zeros(10);% ÆåÅÌ״̬¾ØÕó£¬È¡0Ϊ¿Õ£¬È¡1Ϊºì£¬È¡2ΪºÚ

while 1

hold on

posflag = 1; % ÓÃÓÚÅжÏϵÄÆåÊÇ·ñÓÐЧ£¬È¡1˵Ã÷ϵÄÆåÎÞЧ£¬ÒªÖØÐÂÏ while posflag

[xpos,ypos] = ginput(1);

xpos = 0.5*(floor(xpos)+ceil(xpos));

ypos = 0.5*(floor(ypos)+ceil(ypos));

if xpos<=0.5|xpos>=11|ypos<=0.5|ypos>=11% µãµ½ÆåÅÌÍâÁË continue

end

rx = floor(xpos);

ry = floor(ypos);

if boardstatus(rx,ry)==1|boardstatus(rx,ry)==2%¸ÃλÖÃÒѾ-ÓÐÆå×Ó continue;

end

posflag = 0;

end

if qishou==1

drawthego(xpos,ypos,qishou);

boardstatus(rx,ry)=1;

qishou = 0;

else

drawthego(xpos,ypos,qishou);

boardstatus(rx,ry)=2;

qishou = 1;

end

if iswin(boardstatus,rx,ry)

if qishou==1

winmsg = 'ºÚÆåÁ¬³ÉÁËÎå¿Å£¬ºÚʤ£¡';

else

winmsg = 'ºìÆåÁ¬³ÉÁËÎå¿Å£¬ºìʤ£¡';

end

msgbox(winmsg)

return

Word文档免费下载Word文档免费下载:matlab游戏编程实例(五子棋) (共4页,当前第1页)

你可能喜欢

  • MATLAB编程实例
  • 俄罗斯方块小游戏
  • matlab实例教程
  • 扫雷游戏
  • 数学建模MATLAB程序
  • GUI设计
  • matlab程序设计
  • 猜数字游戏

matlab游戏编程实例(五子棋)相关文档

最新文档

返回顶部