Matlab数学实验报告.doc_第1页
Matlab数学实验报告.doc_第2页
Matlab数学实验报告.doc_第3页
Matlab数学实验报告.doc_第4页
Matlab数学实验报告.doc_第5页
已阅读5页,还剩9页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数学实验报告姓名:班级:学号:第一次实验任务过程: a=1+3i; b=2-i;结果: a+b =3.0000 + 2.0000ia-b =-1.0000 + 4.0000ia*b = 5.0000 + 5.0000ia/b = -0.2000 + 1.4000i过程: x=-4.5*pi/180; y=7.6*pi/180;结果: sin(abs(x)+y)/sqrt(cos(abs(x+y) =0.2098心得:对于matlab中的角度计算应转为弧度。(1)过程: x=0:0.01:2*pi; y1=sin(x); y2=cos(x); y3=exp(x); y4=log(x); plot(x,y1,x,y2,x,y3,x,y4) plot(x,y1,x,y2,x,y3,x,y4)结果:(2)过程: subplot(2,2,1) plot(x,y1) subplot(2,2,2) plot(x,y2) subplot(2,2,3) plot(x,y3) subplot(2.2.4) subplot(2,2,4) plot(x,y4) 结果: 心得:在matlab中,用subplot能够实现在同一页面输出多个坐标系的图像,应注意将它与hold on进行区别,后者为在同一坐标系中划出多条曲线。 5、随机生成一个3x3矩阵A及3x2矩阵B,计算(1)AB,(2)对B中每个元素平方后得到的矩阵C,(3)sinB,(4) A的行列式,(5)判断A是否可逆,若可逆,计算 A的逆矩阵,(6)解矩阵方程AX=B,(7)矩阵A中第二行元素加1,其余元素不变,得到矩阵D,计算D。过程: A=fix(rand(3,3).*10) ; B=fix(rand(3,3).*10);结果: (1) A*B = 22 28 49 64 76 100(2) C=B.2C = 1 4 9 16 25 36(3) sin(B)ans = 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794(4) a=det(A)a = 0(5) 由det(A)存在,且det(A)= 0,故A不可逆(6) X无解(7) l=A(2,1),l1=l+1,m=A(2,2),m1=m+1,n=A(2,3),n1=n+1D=A,D(2,1)=l1,D(2,2)=m1,D(2,3)=n1D = 1 2 3 5 6 7 7 8 9心得:熟练掌握matlab中对数组的操作方法尤为重要,其中,除了要牢记一些十分方便的函数外,应注意对数组的每一个元素进行操作时,应在运算符前加“.”号,如. .* 等。6、设y=(x2 + ex cosx+x)/x,分别计算x=1, 3, 5, 7.4时y的值。其中x表示x的取整函数。过程:x=1,y=(x2+exp(x)*cos(x)+fix(x)/x结果:x = 1y = 3.4687x = 3y = -2.6282x = 5y = 14.4198x = 7.4y = 105.29957、已知某地区1-12月份的平均气温为5,8,13,20,25,28,31,33,27,24,19,10,请绘图表示。过程:: T=5,8,13,20,25,28,31,33,27,24,19,10;bar(T)结果: 第2次实验任务1. 某大学本科生就业情况如下:458人考入研究生,60人签到外企或合资企业,184人签到国营大企业,87人签到私人企业,13人自主创业,画出饼图表示之;过程:x=458 60 184 87 13;pie3(x)答案:2. 求极限 过程:syms x a;limit(x-a)/(x+a)x,x,inf)答案:ans=exp(-2*a)3. 求极限过程: syms x; limit(tan(x)(1/log10(x),x,0,right)答案:ans=exp(1)4.设过程:syms x q t;q = limit (1+1/x)(2*x),x,inf);df = diff (qt,t)答案:df = qt*log(q)5.展开多项式;过程:syms a b;F=(a+b)3+(b-1)2+a+2*b;expand(F)答案: ans = a3+3*a2*b+3*a*b2+b3+b2+1+a6.分解因式过程:syms x; F=x5+3*x4+2*x2+x-1;factor(F)答案:ans= x5+3*x4+2*x2+x-17.求方程的根 过程:syms x; C=solve(x3-2*x+1=0)答案C= 1 1/2*5(1/2)-1/2 -1/2-1/2*5(1/2)8.过程: syms x; f=sqrt(x+sqrt(x+sqrt(x); df=diff(f)答案:df= 1/2/(x+(x+x(1/2)(1/2)(1/2)*(1+1/2/(x+x(1/2)(1/2)*(1+1/2/x(1/2)9. 求不定积分过程: syms x; F=1/(sqrt(2*x+3)+sqrt(2*x-1); Nf=int(F,x,)答案:Nf = -1/12*(2*x-1)(3/2)+1/12*(2*x+3)(3/2) 过程: syms x; F=1/(1+cos(x);Nf=int(F)答案:Nf = tan(1/2*x)10 求定积分过程:syms x; F=1/(x*sqrt(log(x)*(1-log(x); Nf=int(F,x,exp(1/2),exp(3/4)答案:ans=asin(2*log(595882530372511)-96*log(2)-1)-asin(2*log(1856295125090727)-100*log(2)-1)11. 解方程组 过程:syms x y;eq1=sym(2*x+y=8);eq2=sym(x-3*y=1);x,y=solve(eq1,eq2)答案:x =25/7y = 6/712. 求和过程:syms k; symsum(1/k2,k,1,20)答案:ans = 17299975731542641/1083847519827072013. 过程:syms x; taylor(cos(2*x),x,15,pi/6)答案:ans= 1/2-3(1/2)*(x-1/6*pi)-(x-1/6*pi)2+2/3*3(1/2)*(x-1/6*pi)3+1/3*(x-1/6*pi)4-2/15*3(1/2)*(x-1/6*pi)5-2/45*(x-1/6*pi)6+4/315*3(1/2)*(x-1/6*pi)7+1/315*(x-1/6*pi)8-2/2835*3(1/2)*(x-1/6*pi)9-2/14175*(x-1/6*pi)10+4/155925*3(1/2)*(x-1/6*pi)11+2/467775*(x-1/6*pi)12-4/6081075*3(1/2)*(x-1/6*pi)13-4/42567525*(x-1/6*pi)1414. 编写猜数游戏程序:首先由计算机随机产生一个 1,100 之间的一个整数,然后由用户猜测所产生的这个数。根据用户猜测的情况给出不同的提示,如果猜测的数大于产生的数,则显示 “High” ,小于则显示 “ Low ” ,等于则显示 “You won!”,同时退出游戏。用户最多有 7 次机会。过程:a=fix(rand(1)*100);for i=1:1:7x=input(please input the number you guess);if xa fprintf(high);continue;end if x心得体会:(1)灵活运用符号方程和各类求解函数对于我们高数的学习和数学问题的验证将会产生很大帮助。(2)应熟练掌握生成某个范围内随机整数等常用技巧。(3)应正确区分循环中的continue与break的作用,即continue是跳过当次循环,而break是跳出整个循环。第三次Matlab上机实验报告第一题:每门课程考试阅卷完毕,任课教师都要对各班的考试成绩进行统计,统计内容包括:全班人数,总得分,平均得分,不及格的人数及90分(包括90分)以上的人数.请编制程序解决这一问题,并自给一组数据验证程序的正确性.要求:使用者在提示下通过键盘输入学生成绩,计算机自动处理后,显示需要的结果.问题分析及程序:1分析:运用循环来对数组中的每个数的值进行判定,从而达到统计各项人数的目的。 2程序:a=input(请输入数组学生成绩an=); %输入学生成绩到数组中 n=length(a);s=0;p=0;q=0;fori=1:n %在循环中进行统计s=a(i)+s;ifa(i)=90p=p+1;elseifa(i)60q=q+1;endendr=s/n;fprintf(全班人数%.0f总得分%.0f平均得分%.2f不及格的人数%.0f90分(包括90分)以上的人数%.0fn,n,s,r,q,p); %输出运行结果:请输入数组学生成绩 an=87 98 67 98 90 70 60 66全班人数8 总得分636 平均得分79.50 不及格的人数0 90分(包括90分)以上的人数3结果分析:灵活运用循环语句,选择语句等基本语句,能很方便地在程序中实现很多基本功能。第二题: 1 习题1:编程计算小于1000的水仙花数。 问题分析及程序:分析:水仙花数指一个 n 位数 ( n3 ),它的每个位上的数字的 n 次幂之和等于它本身。所以在外层设置1到1000的循环,内层对每一个数是否满足水仙花数的条件进行判断并输出。程序:i=10;g=0;s=0;b=0;fprintf(1到1000的水仙花数有:n)while ia fprintf(high );continue;end If xafprintf(low );continue;endif x=a fprintf(you won);break; endend 结果:please input the number you guess50lowplease input the number you guess75high please input the number you guess63high please input the number you guess56low please input the number you guess60you won结果分析:用二分法能有较高概率猜中结果。第四题: Fibonacci数组元素满足Fibonacci规则: (1)用循环语句形成前20个分量的数组;(2)求该数组中第一个大于10000的数.问题分析及程序: 分析:分别用for循环和while循环能解决以上两个问题。 程序:(1)a(1)=1;a(2)=1for i=3:20 a(i)=a(i-1)+a(i-2);end结果: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 (2) a(1)=1;a(2)=1;i=3;while a(i-1)10000 fprintf(第一个大于10000的数是:%d,a(i) end i=i+1;end结果:第一个大于10000的数是:10946第五题:5.(1)编写一个function函数,调用该函数,可 以求一组数的最大值及最小值. (2)通过键盘输入一组数,利用(1)编写的function函数,得出最大最小数. 问题分析:在函数中利用循环求得最大最小值并返回这两个值。程序:(1)function y1 y2 = daxiao(x)n=length(x);y1=x(1);y2=x(1);for i=2:n if x(i)x(i-1) y1=x(i); else y2=x(i); endend (2)x=input(请输入这组数的值 xn=);y1 y2=daxiao(x);fprintf(最大值是:%.0f,最小值是:%.0f,y1,y2)结果:请输入这组数的值 xn=34 45 56 67 89 99 1最大值是:99,最小值是:1 结果分析:函数中的应给存放最值的变量存初值,否则不会得到预期的结果。心得体会:(1)matlab中的语句与C语言中的语句结构具有很高的相似性,熟练掌握循环结构,选择结构等将会对我们matlab程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论