资讯

展开

猜数字游戏怎么做,请教用authorware制作猜数字游戏怎么弄

作者:本站作者

1,请教用authorware制作猜数字游戏怎么弄

随机函数 文本输入响应 的综合运用比如1000以内猜数:初始化计算图标:rannum:=Random(0,1000,1)交互,双击打开,输入相关提示文字交互--文本输入,下挂计算图标,内写代码:if rannumif rannum>NumEntry then ans:="偏小" if rannum=NumEntry then ans:="恭喜您,猜对了" 返回
同问。。。

请教用authorware制作猜数字游戏怎么弄

2,制作一个猜数字的游戏

送你一个数字游戏:1.写出3位数的数字.(1-9之间.不可重复)2.分成2队.3.每次说3个数字.(要猜对方的数字.先答对者胜利)4.如答案是513.a说:123.则对了最後一个.叫"1A"如a说:167则对了第2个.叫"1B"以此类推.(1A=一个数字对.位置也对.1B=一个数字对.位置不对)例如:A的答案:153B的答案:791A说:123B回:2A.以此类推!!
送你一個數字遊戲: 1.寫出3位數的數字.(1-9之間.不可重複) 2.分成2隊. 3.每次說3個數字.(要猜對方的數字.先答對者勝利) 4.如答案是513.a說:123.則對了最後一個.叫"1a"如a說:167則對了第2個.叫"1b"以此類推.(1a=一個數字對.位置也對.1b=一個數字對.位置不對) 例如: a的答案:153b的答案:791 a說:123b回:2a. 以此類推!!

制作一个猜数字的游戏

3,编写一个猜数字游戏

同学你好!下面是我自己做了一个,运行是成功的。希望对你有所帮助!#include#include #include #include void main() { int i,j,cnt,guard=1; while(guard)/*利用guard来判断是否继续进行游戏*/ { srand((unsigned)time(null)); i=rand()%100;/*随机生成整数*/ cnt=0;/*比较次数置零*/ for(;;) { printf("please input the data:"); scanf("%d",&j); cnt++;/*次数累加*/ if(j>i) printf("too high!\n"); else if(j printf("too low!\n"); else { printf("right!\n"); printf("the cnt is:%d\n",cnt); printf("wanna continue? 1.continue 0.exit\n"); scanf("%d",&guard);/*选择是否继续*/ break; } } } } 希望我的回答对你有帮助,祝你的c成绩进步

编写一个猜数字游戏

4,编写一个玩猜数游戏的程序

#include#include main() { int a[10];int i=0,j,k,m=1,N; printf("Would you like to guess a number ?\nYES=1 NO=0\n"); scanf("%d",&N); while(N) { m=random(0,100); i=0; while(i<=10) { printf("Please guess a number\n"); scanf("%d",&k); if(k>m) { printf("TOO HIGH !\n");i++;continue; } else if (k { printf("TOO LOW!\n");i++;continue; } if(k==m) { printf("RIGHT!\n"); printf("guess %d times\n",i+1); break; } } if(i==11)printf("NO CHANCE~!\n"); printf("Would you like to guess again ?\nYES=1 NO=0\n"); scanf("%d",&N); } return 0; } 以前的作业题。希望对楼主有帮助!

5,作一个猜数字的游戏随机生成110之间的数字然后有5次机会

public class GuessNum public static void main(String[] args) Random random = new Random(); int num = random.nextInt(10); System.out.println("请输入一个整数:"); Scanner scanner = new Scanner(System.in); int i = 5; while(i > 0) int sysin = scanner.nextInt(); if (sysin == num) System.out.println("恭喜猜对!"); break; } else if(i != 1) i--; System.out.println("请再输一次!还剩"+i+"次机会"); }else System.out.println("机会用完,下次再来"); } } }}
#include #include main() { int num, enter; srand(time(null)); //使用当前时间重置随机种子发生器,不然每次产生的随机数就是一样的序列 num = rand() * 1001; //产生 [0,100] 区间的随机数,不知道你要不要生成0和100,我输的是包含0和100的。 printf(“请输入一个数:"); scanf("%d", &enter); if (num == enter) printf("恭喜你,你猜中了!"); else printf("请再努力!"); }

6,求猜数字游戏的策略

首先强烈谴责"帝之魔王"的抄袭行为这个问题,研究一下的确蛮有意思,下面是我的想法,不一定能解决问题,看可能可以给别人以启发.我主要研究的是&lt;在最坏情况下最少几次猜中,策略如何?&gt; 第一步,因为各个数都是一样的,所以第一次输入0123,现在轮到出题者,我相信没人会给他A,顶多给他B,但是给他几个B合理呢?0B,下次猜到B的期望E=4*4/6=8/31B,E=1*1/4+3*3/6=7/42B,E=2*2/4+2*2/6=5/33B,E=3*3/4+1*1/6=29/124B,E=4作为出题人,希望对手猜对B的期望为最小,所以,选择给他2B. 第二步,输入4501,再次轮到出题者,现在问题开始复杂了.我觉得可以把4501分为两部分,45和01,其中45是新的,按上题的方法继续做,0B,E=2*2/4=1;1B,E=1*1/2+1*1/4=3/4;2B,E=2*2/2=2;所以出题者会在45中给1B.其实复杂的是01部分,因为他涉及到A的部分,我只能假设,出题人在不得不给A时才给A这种情况,如果算期望的话,我已经搞不清了,所以从简了,而且这假设我觉得不一定不合理.从给B部分,我们可以同样按照开始的思路0B,E=2*2/2=21B,E=1*1/2+1*1/2=12B,E=2*2/2=2所以01中会给一个B,现在猜题者知道的东西有0,1中有1个;2,3中有一个;4,5中有一个;6,7,8,9中有一个.综上,第2步,出题者给的是0A2B. 第三步,猜题者这一步,稍微聪明点,从4组数中分别去4个数,最起码可以确定,3个数字.但是我们想,作为出题人,在6,7,8,9中,如果是一个数一个数猜,他肯定,会将最后一次猜的设为正确的以增加你猜题次数,也就是说,即使你从现在起,4步后,将6,7,8,9中正确数字的位置确定下来,也需要4步才能,将4个数字都确定.所以这种假设下,最少需要猜加上前面的两步,共6步.如果第三步猜2046. 出题人可以不给A就不给A的前提下,理智出题者给的应该是,0A1B为什么给1B不给0B呢,如果给0B,那么,猜题人就知道前三组数字中1,3,5是必对了,除了在确定A是比3B有优势,其他地方没优势.而给1B而不给2B的原因也就在于,确定A的时候1B比2B更有优势(猜题者更难猜)这样对猜题者来说,是很麻烦的,因为,他不知道1B是哪个,这次作答几乎对确定B没有任何贡献,所以,猜题者不应该出这些数字.如果前三组数字只出现1个,那么不仅可以唯一确定这个数字所在组的B,而且对6,7,8,9中选B也有积极意义 现在总猜题情况为0123,4501所以第三步,出6078. 问题越来越复杂了,对于0可以给B也可以不给,对于6,7,8可以给B也可以不给,0B,1,9肯定是B;2B,1肯定是B,而且6,7,8之间肯定有B,但如果给1B,猜题折还需要猜测,这个B来自哪里,增加了猜题难度,所以出题者给0A1B. 第四步,现在总猜题情况为0123,4501,6078.后面在像前面一样分析,我已经吃不消了,我就说我的猜题策略吧.第四步7890 如果第三步中,B是0的话,那么,出题者该给答案1A1B(沿着这个假设,往下,总猜题情况为0123,4501,6078,7890.现在知道的是0位置已经确定,9确定为B.第五步9240,如果9位置对了,那么,如果给2A0B那么结果必然是9350.如果给2A1B结果必然是9430,如果给3A0B,结果可能是9250和9340也需要两步,最不好的情况就是要7步;如果9位置没对,我相信,在两步也能解出来.)只考虑这中情况,出题人就可以将你的步数限制到最少7步 如果第三步中,B是6,7,8中的一个,那么,0肯定不是B了,1肯定是B,而出题者只用考虑B是在7,8中,还是6,很显然,出题者会让B在7,8中,所以给的答案是0A1B.总猜题情况为0123,4501,6078,7890 第五步8215,出题者0A2B 第六步5381,出题者1A0B===&gt;2741,1A2B===&gt;3751,57312A1B===&gt;34813A0B===&gt;4381.只有这四种情况,是由于受到前面的限制.这中结果也需要7步我不保证自己证明的都很严密,但作为一个解题者,我的感觉是,解这个题目可以步数更少些(虽然我也不知道能不能再少),如果有人能以更少的步数解出,我也会崇拜之,但如果说解这题目要比七步多,我就不同意了,我是完全站在出题者的立场,为难猜题者的思路的假设下去,这也是最糟糕的情况,这也应该是步数最多的情况,如果哪里不清楚可以问我,或者你认为自己可以让我7步内猜不出,可以找我试试
文章TAG:猜数字游戏怎么做  请教用authorware制作猜数字游戏怎么弄  猜数字  数字  数字游戏  
相关教程
猜你喜欢