《2023年实验二MATLAB程序设计含实验报告.docx》由会员分享,可在线阅读,更多相关《2023年实验二MATLAB程序设计含实验报告.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验二 MATLAB程序设计一、实验目的1 .掌握运用if语句实现选择结构的方法。2 .掌握运用switc h语句实现多分支选择结构的方法。3 .掌握运用f o r语句实现循环结构的方法。4 .掌握运用wh i le语句实现循环结构的方法。5 .掌握MATLAB函数的编写及调试方法。二、实验的设备及条件计算机一台(带有MATLAB7.0以上的软件环境)。M文献的编写:启动MATLAB后,点击File I New|M-F i le,启动MATL AB的程序编辑及调 试器(Ed i tor / Debug ger),编辑以下程序,点击F i le I S a v e保存程序, 注意文献名最佳用英文
2、字符。点击Debugl Run运营程序,在命令窗口查看运营 结果,程序如有错误则改正三、实验内容1 .编写求解方程o? +x+c = 0的根的函数(这个方程不一定为一元二次方 程,因4、b、C的不同取值而定),这里应根据4、b、C的不同取值分别解决,有输 入参数提醒,当。=0力= 0,c=()时应提醒“为恒不等式!、并输入儿组典型值 加以检查。(提醒:提醒输入使用了夕才函数)2 .输入一个百分制成绩,规定输出成绩等级A+、A、B、C、D、E。其中10 0分为A +, 90分99分为A, 8 0分8 9分为B, 7 0分79分为C, 60分69分 为D, 60分以下为E。b=0c= 2此为恒不等
3、式第二题成绩等级划分一一请输入一个百分制成绩,查询划分等级:111 输出犯错成绩等级划分一一请输入一个百分制成绩,查询划分等级:5 5E第三题% c 1 a s s i c 3 n +1 ” pro blem from num be r theory.while 1n =i n pu t C Enter n, n egati v e quits: z ;先输入一个非负整数i f n = 0breaki f n 1if rem (n, 2)=0 n=n/2;e Isen = 3*n+l ;enda=a, n;enda= n ;whil e n 1if rem (n, 2)=0 n=n/2;e I
4、sen = 3*n+l ;enda=a, n;%将。的值赋值给a%满足条件nl时循环下列语句 %当。能被2整除则n除以2%假如不能被整除,则n乘以3加1%输出数组a,n,并对比n是否1,大于则继续上诉循环e nd%输出最后的结果aend第四题请输入x的值:-1y=-0. 8497请输入x的值:2y 二2请输入X的值:9a n s =1y 二-3第五题请输入 x 的值:s in(0:0.0 1 :6*p i)平均值为mx =-1 . 12 5 6e-0 07最大值为m a x_x =1.0 0 00最小值为mi n x =-1. 0 0 0 0均方根值为r m s _ x =0 . 7 071请
5、输入x的值:rand(l,2 0 0 )平均值为m_x =0 . 4 9 69最大值为m a xx =0. 9 9 4 3最小值为m in_x =0.009 9均方根值为rm s _x =0. 5 707第六题(p i 八 2)/6 =(1/1*2) + ( 1 /2-2)+ (1/3()+ +( 1 /n,2),求 pi 的近似 值请输出n值:10 0a p prox i matio n =3 . 1321(P i -2)/6 = (1/厂2)+(1/2 八 2) + (l/3 - 2)+(l/rf 2),求 pi 的近似值 请输出n值:1000appro x i mati o n :3.
6、14 0 6(p2) / 6 = (1 / T2)+( 1 / 2 人 2)+(1/3-2)+(l/rT2),求 pi 的近似值 请输出n值:10 0 0 0 app r o x i mat ion =3. 14 15.实验中出现的问题及解决方法对函数的嵌套关系理解混乱解决:反复尝试,得出对的的嵌套关系。”没有运营成功。解决:需要加符号不然无法得出预期结果.思考题的回答a=3;b=2;s= 1/2;for i=l:l 5s=s+a / b;c =a;a=a+ b; b=c;end规定:(1 )用s wit c h语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应 输出犯错信
7、息。(提醒:注意单元矩阵的用法)3.数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇 数,则与3相乘再加上1。反复此过程,最终得到的结果为1。如:2-13 105 1 684 2 16-31051 6 .8421运营下面的程序,按程序提醒输入n=l, 2, 3, 5, 7等数来验证这一结论。请为关键的Matlab语句填写上相关注释,说明其含义或功能。%classic 3n+1 problem from number theory.while 1nsinputfEnter n,negative quits:);if n1if rem(n,2)=0n=n/2;4 .编写一个函数,
8、计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。f uncti o n y = myfu n 1( x )sin羽 y(x) = x,x + 6,xQ0x 3选择一些数据测试你编写的函数。5 .编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。tunc t i o n m_x,m a x_x,min_x, rm s_x=my fun2 (x)方均根值(RootMean S quare)的计算公式为:用下面数据测试你写的函数:(1) x=s i n(0: 0.01 :6*pi)(2) x= r and( 1 ,200),得到的x为200个(0 , 1)之间均匀分布的随机数
9、。216.根据3 = 1 +3+ 1 +.+!,求乃的近似值。当n分别取100、1000、 61 2- 3-n1 0 000时,结果是多少?思考题:有一分数序列:j_ 358 B 212,2,3? 5? T TT 编写一段程序,求前16项的和。四、实验报告规定(包含预习报告规定和最终报告规定)1 .实验名称.2 .实验目的葫习报告3 .实验设备及条件口J最终报告4 .实验内容及规定5 .实验程序设计指程序代码。6 .实验结果及结果分析实验结果规定必须客观,有数据的可以记录数据,没有数据的简朴描述实验 现象。结果分析是对实验结果的理论评判。7 .实验中出现的问题及解决方法8 .思考题的回答四、实
10、验报告的提交方式Word文档,命名方式:实验号你的学号姓名! !例如本次实验:实验一张三.doc(信息101提交报告邮箱):E_m a il:(网络工程101提交作业邮箱):E_mail:(注意网络班的M是大写的)下一次课前提交,过期不收!五、参考文献参考教材和Matlab帮助文献。1 .实验名称MATLAB程序设计2 .实验目的1 .掌握运用if语句实现选择结构的方法。2 .掌握运用swi t ch语句实现多分支选择结构的方法。3 .掌握运用f。r语句实现循环结构的方法。4 .掌握运用while语句实现循环结构的方法。5 .掌握MAT L AB函数的编写及调试方法。3 .实验设备及条件计算机
11、一台(带有MATLAB7.0以上的软件环境)。4 .实验内容及规定把实验内容的应用题,用MATLAB的语法编写出来,并运营成功,注意题与 题之间用相应注释分割。5 .实验程序设计% 1dispd 一元二次方程计算器,请输入下列数值进行计算:);a=i n put ( a=,);b = i nput ( b=);c =inp u t ( c =);i f a= 0 & b=0 & c = 0disp (此为恒不等式);elsed =b*b-4*a*c ;x = (- b +s q r t (d)/ (2*a), (-b-sqrt ( d )/ (2*a);disp(x 1 = , num 2 s
12、 t r (x (1), z , x2 =,, num2 s tr ( x );end%2SCO r es= i nput (成绩等级划分请输入一个百分制成绩,查询划分等级:);switch s cor e sc a se 100rate=,A+;case n u m2c ell (90:99)r a t e =A;case n urn 2 cel 1 (8 0 :89)rat e =B;case num 2 c e 11(70:79)rate =,C;cas e num2cell (60:6 9 )r a te=,D;c a s e n u m2cel 1 (0:5 9 )rat e = E
13、;oth e rwis ed i sp(z输出犯错);en dd is p (rate)%3%cla s sic 3n+l probl e m fr o m numb e r th e o ry.w h ile 1n=in put (Enter n, neg a tive q u i ts:f ) ; % 输入一个非负整数if nl%满足条件n 1时循环下列语句if rem(n, 2) = = 0 %当n能被2整除则n除以2n= n / 2 ;e 1 se与假如不能被整除,则n乘以3加1n=3*n+l;e nda=a, n;蟒俞出数组a, n,并对比n是否1,大于则继续上诉循环enda%输出最
14、后的结果ae nd%4myfun1. m%c 1 cf o rmat compa c t format long gx=input (请输入x的值:);y =tranl(x);d i s p ( y=) disp (y)%4 tran. m%functi o n y=my f u n 1 (x)%当 xx0y = x;%当 x3y=-x+6;if xx 0y=x;else x 3y=-x+6;end%5 tran. m%f u nction m_x, m a x_x, m i n x, r ms_x=myfun 2 (x)%分别是平均值,最大值,最小值,均方根值in x=me a n (me
15、a n ( x )m a x _x=max(ma x (x)m i n_ x =min(m i n (x)a =sq r t (me a n(x.八2);rm s _x=sqrt (me a n(a. 2)%5 my fun 2 . m x二input。平均值、最大值、最小值、均方根值的计算,请输入x的值,; m_x, max_x, min_x, rms_ x = t r a n(x);dispC平均值为)m_xd i sp (最大值为) m a x xdisp (最小值为)min_ xdisp (均方根值为)rm s _x% 6dispC (pi2)/6 = (l/r2) + (l/2 八 2) + (1 /3-2)+(l/n * 2),求pi 的 近似值)appr o x imation=0;n = i n put (请输出 n 值:);a p proximati o n=sqrt (sum ( 1 . /(I: n )/2) * 6 );a p proximation6.实验结果及结果分析第一题一元二次方程(ax-2+bx+c=0 )计算器,请输入下列数值进行计算:a = 2b = 1c = 3xl=-0.2 5+l. 199i, x 2=-0. 25-1. 1 9 9 i一元二次方程(ax-2+bx + c = 0)计算器,请输入下列数值进行计算: a= 0
限制150内