matlAB实验答案.doc

上传人:jian****018 文档编号:9309542 上传时间:2020-04-04 格式:DOC 页数:26 大小:825KB
返回 下载 相关 举报
matlAB实验答案.doc_第1页
第1页 / 共26页
matlAB实验答案.doc_第2页
第2页 / 共26页
matlAB实验答案.doc_第3页
第3页 / 共26页
点击查看更多>>
资源描述
MATLAB程序设计教程上机实验报告专业:机械设计制造及其自动化班级:2011级机械4班姓名:李衍丹学号:20111292指导老师:辜良瑶 机电工程学院 2013年1月5日 第一次上机作业1、求下列表达式的值,显示MATLAB工作空间的使用情况并保存全部变量,变量保存的文件名必须包含自己的学号后四位数:(1)(2) 其中a=3.5,b=5,c=9.8。(3),其中,(4),其中程序代码及结果:(1) w=sqrt(2)*(1+0.34245e-6)w =1.4142(2) x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2)/(tan(b+c)+a)x =6.6186(3) y=2*pi*d*d*(1-pi/4)*e-(0.8333-pi/4)*d)y = -128.4271(4) t=2,1-3i;5,-0.65 z=(1/2)*exp(2*t)*log(t+sqrt(1+t*t)z = 1.0e+004 * 0.0057 - 0.0007i 0.0049 - 0.0027i 1.9884 - 0.3696i 1.7706 - 1.0539i2. 已知,求下列表达式的值:(1)、(其中I为单位阵);(2)A*B、A.*B、B*A、B.*A;(3)A/B、BA;(4)A, B、A(1 3,:);B2。程序代码及结果:(1) A=-1,5,-4;0,7,8;3,61,7,B=8,3,-1;2,5,3;-3,2,0 A+6*Bans = 47 23 -10 12 37 26 -15 73 7 I=eye(3)I = 1 0 0 0 1 0 0 0 1 A*A-B+Ians = -18 -217 17 22 533 10921 867 526(2) A*Bans = 14 14 16 -10 51 21 125 328 180 A.*Bans = -8 15 4 0 35 24-9 122 0 B*Aans = -11 0 -15 7 228 53 3 -1 28 B.*Aans = -8 15 4 0 35 24-9 122 0(3) A/Bans = 1.2234 -0.9255 2.9787 -0.9468 2.3511 -0.9574 4.6170 3.8723 13.8936 BAans = -0.5106 -8.6170 -1.1277 0.7340 17.5745 1.8085 -0.8830 -21.2128 0.4043(4) A,Bans = -1 5 -4 8 3 -1 0 7 8 2 5 3 3 61 7 -3 2 0 A(1 3,:);B2ans = -1 5 -4 3 61 7 73 37 1 17 37 13 -20 1 93. 已知(1)、取出A的前三行构成矩阵B,其前两列构成矩阵C,其右下角32子矩阵构成的矩阵D,B与C的乘积构成矩阵E。(2)、分别求E B=A(1:3,1:4)B = 23.0000 10.0000 -0.7780 0 41.0000 -45.0000 65.0000 5.0000 32.0000 5.0000 0 32.0000 C=A(1:4,1:2)C = 23.0000 10.0000 41.0000 -45.0000 32.0000 5.00006.0000 -9.5400 D=A(2:4,3:4)D = 65.0000 5.0000 0 32.0000 54.0000 3.1400 E=B*CE = 1.0e+003 * 0.9141 -0.2239 1.2080 2.71231.1330 -0.2103(2) E E&Dans = 1 1 0 1 1 1 E|Dans = 1 1 1 1 1 1 E|Dans = 0 0 1 0 0 04. 产生均值为3,方差为1的5阶正态分布的随机方阵。程序代码及结果: A=3+randn(5)A = 1.3344 4.1892 3.7258 4.0668 1.6638 3.1253 2.9624 2.4117 3.0593 3.7143 3.2877 3.3273 5.1832 2.9044 4.6236 1.8535 3.1746 2.8636 2.1677 2.30824.1909 2.8133 3.1139 3.2944 3.85805. 使用函数,实现方阵A左旋、右旋的功能,。程序代码及结果: A=1 4 7 10;2 5 8 11;3 6 9 12;4 7 10 13A = 1 4 7 10 2 5 8 11 3 6 9 12 4 7 10 13 rot90(A)ans = 10 11 12 13 7 8 9 10 4 5 6 7 1 2 3 4 rot90(A,-3)ans = 10 11 12 13 7 8 9 10 4 5 6 7 1 2 3 46. 建立一个字符串向量(要求字符串向量必须包含自己的姓名,大小写均可),删除其中的大写字母。程序代码及结果:xm=My name is Liyandanxm =My name is Liyandan xm=My name is Liyandanxm =My name is Liyandan k=find(xm=A&xm xm(k)=; char(xm)ans =My name is Liyandan7. 分别建立一个结构矩阵和一个单元矩阵来存储自己班上5名同学的基本情况数据(其中1名同学必须是自己,另外一名必须是女生),每名学生的数据包括学好、姓名、专业和6门课程的成绩。并查询自己的所有信息以及女生的成绩。程序代码及结果: a.xuehao=20111409;a.name=欧阳冬枚;a.major=机械4班;a.grade=87 98 92 91 94 96a = xuehao: 20111409 name: 欧阳冬枚 major: 机械4班 grade: 87 98 92 91 94 96 b.xuehao=20111292;b.name=李衍丹;b.major=机械4班;b.grade=91 85 81 88 97 90b = xuehao: 20111292 name: 李衍丹 major: 机械4班 grade: 91 85 81 88 97 90 c.xuehao=20111291;c.name=李翔宇;c.major=机械4班;c.grade=87 87 91 95 93 93c = xuehao: 2011191 name: 李翔宇 major: 机械4班 grade: 87 87 91 95 93 93 d.xuehao=20111302;d.name=王伟;d.major=机械4班;d.grade=84 87 92 91 85 94d = xuehao: 20111302 name: 王伟 major: 机械4班 grade: 84 87 92 91 85 94 e.xuehao=20111311;e.name=尹章良;e.major=机械4班;e.grade=88 93 87 91 84 96e = xuehao: 20111311 name: 尹章良 major: 机械4班 grade: 88 93 87 91 84 96 z=20111409,欧阳冬枚,机械4班,87 98 92 91 94 96;20111292,李衍丹,机械4班,91 85 81 88 97 90;20111291,李翔宇,机械4班,87 87 91 95 93 93;20111302,王伟,机械4班,84 87 92 91 85 94;20111311,尹章良,机械4班,88 93 87 91 84 96z = 20111409 欧阳冬枚 机械4班 1x6 double20111292 李衍丹 机械4班 1x6 double20111291 李翔宇 机械4班 1x6 double20111302 王伟 机械4班 1x6 double20111311 尹章良 机械4班 1x6 double第二次上机作业1. 分析脚本M文件与函数文件的区别。区别:1)、脚本M文件没有输入参数,也不返回输出参数,而函数M文件可以带参数,也可以返回输出参数; 2)、脚本M文件对MATLAB工作空间中的变量进行操作,文件中所有命令的执行结果也完全返回到工作空间中,而函数M文件中定义的变量为局部变量,当函数M文件执行完毕时,这些变量被消除; 3)、脚本M文件可以直接运行,在MATLAB命令窗口中输入命令文件的名字,就会顺序执行命令文件中的命令,而函数M文件不能直接运行,而要用函数调用的方式运行。2分别编写脚本文件,实现以下要求:1) 求100,999之间能被21整除的个数。2) 用magic(6)产生一矩阵,用至少两种方法求解其所有元素的和。(提示:1、for循环;2、sum函数)程序代码及结果:(). sum=0;for n=100:999; if rem(n,21)=0; sum=sum+1; endendsumsum = 43(). A=magic(6)sum=0;for n=1:36; sum=sum+A(n);endsumA = 35 1 6 26 19 24 3 32 7 21 23 25 31 9 2 22 27 20 8 28 33 17 10 15 30 5 34 12 14 16 4 36 29 13 18 11sum = 666A=magic(6)sum=6*(A(1,1)+A(1,2)+A(1,3)+A(1,4)+A(1,5)+A(1,6)A = 35 1 6 26 19 24 3 32 7 21 23 25 31 9 2 22 27 20 8 28 33 17 10 15 30 5 34 12 14 16 4 36 29 13 18 11sum = 6663. 编写函数文件,实现从键盘输入一个3位整数,将它反向输出。如639,输出为936。并调用该函数,输入自己的学号后三位数,输出结果。程序代码及结果:function d=fad(f)a=fix(f/100);b=fix(f/10)-10*fix(f/100);c=rem(f,10);d=a+10*b+100*cy=input(input a number:);x=fad(y)input a number:292d = 292x = 2924. 定义一个函数文件,求,要求在函数文件中包含能够通过help查询到的说明,说明里面必须有自己的名字学号。然后调用该函数文件求的值。程序代码及结果:function count=asd(n,m) % 姓名:李衍丹 % 学号 :20111292 count=0; for i=1:n count=count+im; end count=asd(100,1)+asd(50,2)+asd(10,-1)count =4.7978e+0045.已知,当x取-3.0,-2.9,-2.8,2.8,2.9,3.0时,1) 、求各点的函数值;2) 、求这些数据的平均值;程序代码及结果:(1).function a=diwuti(n,m)for x=(n:0.1:m) a=sin(x+1.7)*log(pi+x)/2)/(1+cos(x+1.7)end a y=diwuti(-3,3)a = 2.0130a =1.4460a =1.0835a =0.8252a =0.6311a =0.4807a =0.3621 a =0.2678 a =0.1924a =0.1322a =0.0847 a =0.0478a =0.0200a =0a =-0.0130a =-0.0198a =-0.0209a =-0.0167a =-0.0076a = 0.0064a =0.0250a =0.0482a =0.0762a =0.1090a =0.1469a =0.1904 a =0.2398a =0.2958a =0.3594a =0.4317a =0.5141a =0.6086a =0.7178a =0.8453 a =0.9962a =1.1774a =1.3996a =1.6789a =2.0418a =2.5340a =3.2431a =4.3588a =6.3853a =11.2510a =39.4306a =-28.8207a =-10.8760a =-6.8045a =-4.9934a =-3.9630a =-3.2935a =-2.8202a =-2.4653a =-2.1871a =-1.9614a =-1.7731a =-1.6124a =-1.4725a =-1.3487a =-1.2373a =-1.1359a =-1.1359y =-1.1359(2).function a=diwuti(n,m)a=0;for x=(n:0.1:m) a=sin(x+1.7)*log(pi+x)/2)/(1+cos(x+1.7)+a; a=10*a/(m-n);end a y=diwuti(-3,3)a = 1.2269e+014y = 1.2269e+0146. 求分段函数的值。用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5时的值。程序代码及结果:x=input(input x:);if x=0&x=90&x=80&x=70&x=60&x y=dibati(100)y = 3.1321 y=dibati(1000)y = 3.1406 y=dibati(10000)y = 3.1415(2)、function p=dibati(n)i=1:1:n;p=sum(1./i./i);p=sqrt(6*p); y=dibati(100)y = 3.1321 y=dibati(1000)y = 3.1406 y=dibati(10000)y = 3.14159. 已知n=1时,f1=1;n=2时,f2=0;n=3时,f3=1;n3时,fn=fn-1 -2fn-2+ fn3;求f1 f100中,最大值、最小值以及各数之和。程序代码及结果:f(1)=1;f(2)=0;f(3)=1;for n=4:100 f(n)=f(n-1)-2*f(n-2)+f(n-3); endMAX=max(f)MIN=min(f)SUM=sum(f) MAX = 4.3776e+011MIN = -8.9941e+011SUM = -7.4275e+01110. 某公司员工的工资计算方法如下:1)工作时数超过120小时者,超过部分加发15%;2)工作时数低于60小时者,扣发700元;3)其余按每小时84元计发。试编程按输入的工号和该号员工的工时数,计算应发工资。程序代码及结果:hours=input();s=90; %90if hours120 salary=120*s+(hours-120)*s*(1+0.15);else salary=84*hours; endsalary请输入工作时数:100salary = 8400请输入工作时数:130salary = 11835请输入工作时数:40salary = 2900第三次上机作业1、 运行课本第四章及课堂上讲过的例子.(1)、x=0:0.1:1;y=2.3,4.3,2.5,6,4.9,1.5,1,4.6,5,6.7,0;plot(x,y)(2)、t=linspace(0,2*pi,100);x=t;t;y=sin(t);cos(t);plot(x,y)(3)、x=0:0.1:3*pi;y1=sin(x);y2=cos(x);plot(x,y1,-g,x,y2,:bo);patch(x,y1,r)2、设区间取101点,绘制函数的曲线。程序代码及结果:x=0:2*pi/101:2*pi;y=(0.5+3.*sin(x)/(1+x.*x).*cos(x);plot(x,y)3、已知,完成下列操作:(1) 在同一坐标系下用不同的颜色和线型绘制三条曲线。(2) 在不同的窗口用不同的颜色和线型绘制三条曲线。(3) 以子图形式用不同的颜色和线型制三条曲线。(4) 为(3)所有子图添加标题、坐标轴说明及适当的文本标注。程序代码及结果:(1)、x=0:pi/100:2*pi;y1=x.*x;y2=cos(2.*x);y3=y1.*y2;plot(x,y1,g-,x,y2,b-.,x,y3,r:)(2)、x=0:pi/100:2*pi;y1=x.*x;y2=cos(2.*x);y3=y1.*y2;figure(1)plot(x,y1,g-)figure(2)plot(x,y2,b-.)figure(3)plot(x,y3,r:) (3)、x=0:pi/100:2*pi;y1=x.*x;y2=cos(2.*x);y3=y1.*y2;subplot(2,2,1)plot(x,y1,g-)subplot(2,2,2)plot(x,y2,b-.)subplot(2,2,3)plot(x,y3,r:) (4)、x=0:pi/100:2*pi;y1=x.*x;y2=cos(2.*x);y3=y1.*y2;subplot(2,2,1)plot(x,y1,g-)title(y1=x2 );xlabel(Variable X);ylabel(Variable Y);text(2,30,y1=x2)subplot(2,2,2)plot(x,y2,b-.)title(y2=cos(2*x) );xlabel(Variable X);ylabel(Variable Y);text(1,0.5,y1=cos(2*x);subplot(2,2,3)plot(x,y3,r:)title(y3=y1*y2 );xlabel(Variable X);ylabel(Variable Y);text(2,20,y1=y1*y2)4. 编写函数绘制三维球面,允许用户指定球面圆心位置及半径;并调用函数文件绘制圆心在(2,3,2.5)处,半径为2的三维球面。程序代码及结果:t=0:pi/40:2*pi;x,y,z=sphere;x=x+2;y=y+3;z=z+2.5;surf(2*x,2*y,2*z)5 、使用子图,在一个图形窗口分图绘制函数(-5x,y5)的三维网格图和曲面图,要求:1) 第一个子图直接用mesh函数绘图,不加任何修饰;2) 第二个子图直接用surf函数绘图,去掉网格线;3) 第三个子图在第二个子图的基础上使用颜色插值,平滑表面;4) 为所有子图添加标题、坐标轴说明及适当的文本标注。程序代码及结果:x,y=meshgrid(-5:0.5:5);z=cos(x).*cos(y).*exp(sqrt(x.*x+y.*y)/4);subplot(2,2,1);mesh(x,y,z);xlabel(X-axis),ylabel(Y-label),zlabel(Z-label);title(1);text(1,2,3,1);subplot(2,2,2)surf(x,y,z);shading interp;xlabel(X-axis),ylabel(Y-label),zlabel(Z-label);title(2);text(1,2,3,2);subplot(2,2,3)surf(x,y,z);shading flat;xlabel(X-axis),ylabel(Y-label),zlabel(Z-label);title(3);text(1,2,3,3);
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!