matlab龟兔赛跑.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab龟兔赛跑

一. 龟兔赛跑 本题旨在可视化龟兔赛跑的过程。比赛的跑道由周长为 P 面积 为 A 的矩形构成。每单位时间,乌龟沿跑道缓慢前进一步,而 兔子信心满满,每次以一个固定的概率决定走或不走。如果选 择走,就从 2-10 步中等概率选择一个步长。 每个单位时间用一 个循环表示。赛跑从矩形跑道左上点( 0,0 )开始,并沿顺时 针方向进行。不管是乌龟或兔子,谁先到达终点,比赛就告结 束。 要求: 编写 MATLAB程序可视化上述过程。 程序以 P,A 以及兔子每次休息或 前进的概率为输入参量。程序必须可视化每个时刻龟兔赛跑的进程, 并以红色 “* ”表示乌龟, 蓝色的 “—”表示兔子。 测试时可取 P=460, A=9000。通过上述例子, 可否从理论和实验角度估计兔子休息或前进 的概率,是的兔子和乌龟在概率意义下打平手 建立 move.m放在龟兔赛跑文件夹,该模块功能为计算兔子的随机步长。 move.m源代码如下:(截图如图 1) %兔子的随机步数 %数组 a, 长度为 n ,以等概率随机从 a 中选出 m个元素 %CopyRight :张添骄 Date :2015/11/29 function y=move() a=2:10; n=length(a); rand_index=randperm(n);% 将序号随机排列 draw_rand_index=rand_index(1:1);% 取出前 m个序号 y=a(draw_rand_index)% 取出这 m个序号对应的元素 图 1:move.m源代码截图 建立 run.m 放在龟兔赛跑文件夹,该模块功能为可视化龟兔赛跑过程 run.m 源代码如下:(截图如图 2 ) %可视化比赛过程 clear; close all; f=0.2;% 兔子前进的概率 p=input(p=); a=input(a=); %计算矩形长 x 宽 y x=1/4*p-1/4*(p^2-16*a)^(1/2);% 求长 y=1/4*p+1/4*(p^2-16*a)^(1/2);% 求宽 %用黑实线绘画跑道 a=0:x;% 长赋值 b=0:y;% 宽赋值 plot(0,-b,k-); hold on; plot(a,0,k-); hold on; plot(x,-b,k-); hold on; plot(a,-y,k-); %动态演示 l=0; s=0; for t=0:p% 在总运行时间内 s=1+s;% 乌龟移动的距离 if randsrc(1,1,[1,0;f,1-f])==1 l=move+l;% 兔子移动的距离 end pause(0.1); if s=x plot(s,0,r*); elseif s=y+x plot(x,-(s-x),r*); elseif s=(2*x+y) plot(x-(s-(x+y)),-y,r*); elseif s=(2*x

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档