声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3503|回复: 7

[共享资源] [原创]我今天自己写的一个猜数学游戏的源程序,希望大家多多指点!

[复制链接]
发表于 2006-6-8 17:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
[hide]今天早上自己开发的一个程序,就是和以前文曲星上面的猜数学游戏一样。系统先给出一个随机四位数,数字不重复,然后你来猜,A表示数学大小与位置都对,B表示你给出的数字大小对,但位置不对,有八次机会猜,完全猜对了系统会显示A4B4
一个挺简单的程序,同大家交流一下。

  1. for h=1:20;
  2.   y=floor(rand(1,4)/0.1);
  3.   if y(1)~=y(2)&y(1)~=y(3)&y(1)~=y(4)&y(2)~=y(3)&y(2)~=y(4)&y(3)~=y(4)
  4.       break
  5.   end
  6. end
  7. y=y(1)*1000+y(2)*100+y(3)*10+y(4);
  8. y=int2str(y);
  9. z='AaBb';
  10. for k=1:8
  11.   x=input('input the number>','s');
  12.   a=0;b=0;
  13.   for i=1:4;
  14.      if x(i)==y(i)
  15.         a=a+1;
  16.      end
  17.   end
  18.   for i=1:4;
  19.      for j=1:4;
  20.         if x(i)==y(j)
  21.             b=b+1;
  22.         end
  23.      end
  24.   end
  25.   z(2)=int2str(a);z(4)=int2str(b);
  26.   z
  27.   if a==4
  28.       congratulation=('You are Win!')
  29.       break
  30.   end
  31.   if k==8
  32.       Times_over=('You are Lose')
  33.   end
  34. end
复制代码

[ 本帖最后由 suffer 于 2006-10-9 21:03 编辑 ]

评分

1

查看全部评分

回复
分享到:

使用道具 举报

发表于 2006-6-8 17:13 | 显示全部楼层
<P>运行了一下,一直有点错误。?? Attempted to access x(2); index out of bounds because numel(x)=1.</P>
<P>Error in ==&gt; checknumber at 14<BR>     if x(i)==y(i)<BR></P>
 楼主| 发表于 2006-6-8 17:16 | 显示全部楼层
我运行了好多次,都没有问题的,不知道你的Matlab版本是多少,我的是6.5<BR>还有,输入的时候一定要输入四位数才行,要不然会出现错误
 楼主| 发表于 2006-6-8 17:32 | 显示全部楼层
我又看了一下,楼上的之所以会出现那个问题是因为输入的数字不是四位的。
发表于 2006-6-8 17:35 | 显示全部楼层
<P>恩,我试了一下。你说的是对的</P>
 楼主| 发表于 2007-3-7 10:52 | 显示全部楼层
不知道大家能不能把这个程序再改进一下,比如加上一个界面
发表于 2007-3-9 10:25 | 显示全部楼层
原帖由 jt1937 于 2007-3-7 10:52 发表
不知道大家能不能把这个程序再改进一下,比如加上一个界面



已修改,参见:[原创]一个猜数字游戏(改良版)
发表于 2007-3-9 15:53 | 显示全部楼层
恩!试了一下!很有意思!:lol
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-13 02:46 , Processed in 0.058797 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表