《数学建模考题.docxVIP

  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文档。上传文档
查看更多
《数学建模考题

数学建模考题答案********感谢赵汝强同学整理*********一、选择题矩阵输入实验1(2)随机生成4种类型的随机矩阵,编程求出其最大值及其所处的位置% 要重复四次,使用自定义函数更方便,虽然函数只有两行。x = rand(3) % [0,1] 均匀分布[i,j,v] = myMax(x)x = randn(3) % 标准正态分布[i,j,v] = myMax(x)x = exprnd(1,3) % 均值为1的指数分布[i,j,v] = myMax(x)x = poissrnd(1,3) % lambda为1的poisson分布[i,j,v] = myMax(x)function [i,j,v] = myMax(x)% 编程求最大值所在的位置v = max(x(:));[i,j] = find(x == v);3、实验1(3)画出 y = x*sin(x) 在[0,100] 上的图,求出局部极小值的位置,并统计出现局部极小值出现的次数。h = 1e-2; % 可以调整步长来调整结果的精度。x = 0:h:100;y = x.*sin(x);xmin = []; %存放局部极小点的x坐标ymin = []; %存放局部极小点的y坐标for i = 2:length(x)-1if y(i)y(i-1) y(i)y(i+1)xmin = [xmin x(i)];ymin = [ymin,y(i)];endendplot(x,y,b);hold on;plot(xmin,ymin,r*);disp(局部极小点个数);disp(length(xmin))4、实验2(3)用两种方法画出半径为1的球面。% 方法1figure, sphere(100) % 100表示画出的曲面小方块为100*100% 方法2 给出参数方程,使用ezsurf,最不容易出错的方法。r = 1;x = @(theta,phi) r*sin(theta)*cos(phi);y = @(theta,phi) r*sin(theta)*sin(phi);z = @(theta,phi) r*cos(theta);figure, ezsurf(x,y,z,100) % 100表示画出的曲面小方块为100*100% 方法3 这种写法比教材上好懂一点。[theta,phi] = meshgrid(linspace(0,2*pi,100)); % 100表示画出的曲面小方块为100*100x = r*sin(theta).*cos(phi);y = r*sin(theta).*sin(phi);z = r*cos(theta);figure,surf(x,y,z);5、实验3(1)1. 2011高教社杯全国大学生数学建模竞赛B题附件2中有582个路口信息,请求出各个区内部,任意两个路口之间的直线距离。赛题链接:/html_cn/node/a1ffc4c5587c8a6f96eacefb8dbcc34e.html解答说明:(1)附件是Excel文件,如果对Excel文件不熟悉,可以将数据拷贝到txt文件里面,使用load,最简单。如果使用xlsread,请参考教材p425页的例子或者查找matlab帮助。(2)因为要求6个区内部点之间的直线距离,如果直接写成程序段,这个程序段会重复6次,所以写出函数的形式,然后调用6次是比较合适的做法。函数见myDis.m(3)不同的区之间的数据最好是能够使用程序来自动区分,而不是靠人来指定范围。% 不同路口的坐标和路口所在的坐标,% 第一个输出数字,第二输出文本[Points,Districts] = xlsread(cumcm2011B附件2_全市六区交通网路和平台设置的数据表.xls, 全市交通路口节点数据,B2:D583);%% 求出6个区的起始和终点的序号。% 竞赛时,如果编程不熟练,直接手工查找也花不了多长时间,可能比编程效率还高。% 下面用编程的方法解决。% 将细胞数组转换为简单字符串。d = [];for i = 1:length(Districts) d = [d,Districts{i}]; end % d会变成AA.....FFpos = zeros(6,2); % pos中存储6个区的起始和终点位置。ch = A;for i = 1:6 p = find(d==ch);pos(i,1) = p(1); % 起始位置pos(i,2) = p(end); % 终点位置ch = ch + 1;end%% 如果不使用上面代码,直接手工做,应该类似于下面的写法。% pos = [1,92; 93,165; 16

文档评论(0)

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

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

1亿VIP精品文档

相关文档