试验二MAAB程序设计含试验报告_第1页
试验二MAAB程序设计含试验报告_第2页
试验二MAAB程序设计含试验报告_第3页
试验二MAAB程序设计含试验报告_第4页
试验二MAAB程序设计含试验报告_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、实验二MATLAB程序设计实验目的1 .掌握利用if语句实现选择结构的方法.2 .掌握利用switch语句实现多分支选择结构的方法.3 .掌握利用for语句实现循环结构的方法.4 .掌握利用while语句实现循环结构的方法.5 .掌握MATLA函数的编写及调试方法.二、 实验的设备及条件计算机一台带有以上的软件环境.M文件的编写:启动MATLAB后,点击File|New|M-File ,启动 MATLAB的程序编辑及调试器 Editor/Debugger ,编辑以下程序,点击 File|Save保存程序,注意文件名最好用英文字符.点击Debug|Run运行程序,在命令窗口查看运行结果,程序如有

2、错误那么改正三、实验内容1 .编写求解方程ax2 bx c 0的根的函数这个方程不一定为一元二次方程,因 a、b、c的不同取值而定,这里应根据a、b、c的不同取值分别处理,有输入参数提示, 当a 0,b 0,c 0时应提示“为恒不等式! .并输入几组典型值加以检验.提示:提示输入使用input函数2 .输入一个百分制成绩,要求输出成绩等级 A+ A、B C D E.其中100分为A+, 90分99分为A, 80分89分为B, 70分79分为C, 60分69分为D, 60分以下为 E.要求:1用switch语句实现.2输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错 信息.提示:注

3、意单元矩阵的用法3 .数论中一个有趣的题目:任意一个正整数,假设为偶数,那么用 2除之,假设为奇数, 那么与3相乘再加上1.重复此过程,最终得到的结果为1.如:4 15 10 5 16 8 4 2 16 3 10 5 16 8 4 2 1运行下面的程序,按程序提示输入 n=1,2,3,5,7等数来验证这一结论.请为关键的Matlab语句填写上相关注释,说明其含义或功能.%classic "3n+1" problem from number theory.X的值,调用该函数后,4 .编M个函数,计算下面函数的值,给出标量 n=input( 'Enter n,negat

4、ive quits:' );if n<=0breakend a=n;while n>1返回y的值function y=myfun1(x)选择一些数据测试你编写的函数.5 .编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值.function m_x,max_x,min_x,rms_x=myfun2(x) 方均根值(Root Mean Square) 的计算公式为:用下面数据测试你写的函数:(1) x=sin(0:6*pi)(2) x=rand(1,200),得到的x为200个(0, 1)之间均匀分布的随机数.22 11116.根据一 求 的近似值.当n分别取100

5、、1000、100006 12 22 32n2时,结果是多少?思考题:有一分数序列:编写一段程序,求前16项的和.四、实验报告要求(包含预习报告要求和最终报告要求)1. 实验名称.2. 实验目的3. 实验设备及条件预习报告4. 实验内容及要求5. 实验程序设计,最终报告指程序代码.6. 实验结果及结果分析实验结果要求必须客观,有数据的可以记录数据,没有数据的简单描述实验现象.结 果分析是对实验结果的理论评判.7. 实验中出现的问题及解决方法8. 思考题的答复,四、实验报告的提交方式Word文档,命名方式:实验号 你的学号 姓名!!例如本次实验:实验一 _000000001_张三.doc(信息1

6、01提交报告邮箱):E_mail:(网络工程101提交作业邮箱):E_mail: M (注意网络班的M是大写的)下一次课前提交,过期不收!五、参考文献参考教材和Matlab帮助文件.1 .实验名称MATLA01序设计2 .实验目的1 .掌握利用if语句实现选择结构的方法.2 .掌握利用switch语句实现多分支选择结构的方法.3 .掌握利用for语句实现循环结构的方法.4 .掌握利用while语句实现循环结构的方法.5 .掌握MATLA函数的编写及调试方法.3 .实验设备及条件计算机一台(带有以上的软件环境).4 .实验内容及要求把实验内容的应用题,用 MATLAB勺语法编写出来,并运行成功,

7、注意题与题之间用 相应注释分割.5 .实验程序设计%1disp(' 一元二次方程计算器,请输入以下数值进行计算:');a=input('a=');b=input('b=');c=input('c=');if a=0 & b=0 & c=0disp('此为恒不等式');elsed=b*b-4*a*c;x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a);disp('x1=',num2str(x(1),',x2=',num2str(x(2);ends

8、cores=input('成绩等级划分请输入一个百分制成绩,查询划分等级:');switch scorescase 100rate='A+'case num2cell(90:99)rate='A'case num2cell(80:89)rate='B'case num2cell(70:79)rate='C'case num2cell(60:69)rate='D'case num2cell(0:59)rate='E'otherwisedisp('输出出错');enddi

9、sp(rate)%3%classic "3n+1" problem from number theory.while 1n=input('Enter n,negative quits:'); %输入一个非负整数if n<=0%如果输入的数为负数,那么不做操作breakenda=n;%将n的值赋值给awhile n>1%涉足条件n>1时循环卜列语句if rem(n,2)=0%n=n/2;当n能被2整除那么n除以2else%n=3*n+1;如果不能被整除,那么n乘以3加1enda=a,n;%输出数组a,n,并比照n是否>1,大于那么继续上

10、诉循环enda%输出最后的结果aend%4%clcformat compactformat long gx=input('请输入x的值:');y=tran1(x);disp('y=')disp(y)%4%function y=myfun1(x)%S x<=0 y=sin(x);% 3>x>0 y=x;% x>3y=-x+6;if x<=0y=sin(x);elseif 3>x>0y=x;else x>3y=-x+6;end%5%function m_x,max_x,min_x,rms_x=myfun2(x)%分别是

11、平均值,最大值,最小值,均方根值m x=mean(mean(x)max_x=max(max(x)min_x=min(min(x)a=sqrt(mean(x.A2);rms_x=sqrt(mean(a.A2)%5%x=input('平均值、最大值、最小值、均方根值的计算,请输入 x的值,:');m_x,max_x,min_x,rms_x=tran(x);disp('平均值为')m_xdisp("最大值为")max_xdisp("最小值为")min_xdisp(,均方根值为')rms_x%6disp('(piA

12、2)/6 = (1/1A2)+(1/2A2)+(1/3A2)+(1/nA2),求 pi 的近似值,)approximation=0;n=input('请输出 n 值:,);approximation=sqrt(sum(1./(1:n).A2)*6);approximation6 .实验结果及结果分析第一题一元二次方程(axA2+bx+c=0)计算器,请输入以下数值进行计算:a=2b=1c=3x1=+,x2=一元二次方程(axA2+bx+c=0)计算器,请输入以下数值进行计算:a=0b=0c=>> 2此为恒不等式第二题成绩等级划分一一请输入一个百分制成绩,查询划分等级:111

13、输出出错成绩等级划分一一请输入一个百分制成绩,查询划分等级:55E第三题%classic "3n+1" problem from number theory.while 1n=input('Enter n,negative quits:');%俞入一个非负整数if n<=0皈口果输入的数为负数,那么不做操作breakenda=n;%等n的值赋值给awhile n>1%两足条件n>1时循环以下语句if rem(n,2)=0%当n能被2整除那么n除以2n=n/2;else%如果不能被整除,那么n乘以3加1n=3*n+1;enda=a,n;%输出

14、数组a,n,并比照n是否>1,大于那么继续上诉循环enda%输出最后的结果aend第四题请输入x的化-1y=请输入x的值:2y=请输入x的值:9ans =1y=-3第五题请输入x的值:sin(0:6*pi)平均值为m_x =最大值为max_x =最小值为min_x =均方根值为rms_x =请输入x的值:rand(1,200)平均值为m_x =最大值为max_x =最小值为min x =均方根值为rms_x =第六题(piA2)/6 = (1/1A2)+(1/2A2)+(1/3A2)+请输出n值:100approximation =+(1/nA2),求pi的近似值(piA2)/6 = (1/1A2)+(1/2A2)+(1/3A2)+(1/nA2),求pi的近似值请输出n值:1000approximati

温馨提示

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

评论

0/150

提交评论