谁能帮我做下这道题,不甚感谢!!
用一个随机数生成器来开发一个模拟程序,重建经典的龟兔赛跑问题,参赛者充方格1开始,每个方格表示赛道上的一段,终点线在方格70处。第一个到达或超过方格70的参赛者将得到奖励,由于赛道在一面滑溜的山坡上,因此有时参赛者可能会打滑,向后倒退。
时钟按秒计算。每过1秒应用程序应根据下表规则调整参赛者的位置。用变量来记录其位置(即位置编号1~70)它们都成位置1出发(起点)。如果谁退到方格1之前,则将其移回到方格1.
用一个介于1~10之间的随机整数i生成下图中的百分比。对于乌龟,如果6≤i≤7,让它倒退,如果8≤i≤10,让它慢爬。对兔子也做类似处理。
比赛开始时显示
BANG!!!!
AND THEY'RE OFF!!!!
然后,每秒(即循环的每一次)显示一条有70个位置的直线,用字母T表示乌龟的位置,用H表示兔子的位置。偶尔它们会出现在同一个方格中,这种情况下乌龟会咬兔子,程序应该在这个位置显示“OUCH!!”。除了T,H或OUCH!!!,其他地方都应该是空白的,显示直线后,判断是否有参赛者已经到达或超过了方格70,如果是,显示获胜者并结束。如果乌龟胜利,显示“TORTOISE WINS!!!!YAY!!!”,如果是兔子胜利,显示"Hare wins.Yuch.".如果它们同时到达,显示“It's a tie。”。如果两者都没有获胜,再次执行循环,模拟下一秒。
Move type Percentage of the time Actual move
Tortoise (快爬) 50﹪ 向右3格
(倒退) 20﹪ 向左6格
(慢爬) 30﹪ 向右1格
Hare (睡觉) 20﹪ 不动
(大跳) 20﹪ 向右9格
(退一大步) 10﹪ 向左12格
(小跳) 30﹪ 向右1格
(退一小步) 20﹪ 向左2格
图:乌龟和兔子的位置调整规则
[此贴子已经被作者于2007-10-28 14:28:09编辑过]