实验二MATLAB程序的设计含实验报告.docx
- 文档编号:24864971
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:12
- 大小:70.96KB
实验二MATLAB程序的设计含实验报告.docx
《实验二MATLAB程序的设计含实验报告.docx》由会员分享,可在线阅读,更多相关《实验二MATLAB程序的设计含实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
实验二MATLAB程序的设计含实验报告
实验二MATLAB程序设计
一、实验目的
1.掌握利用if语句实现选择结构的方法。
2.掌握利用switch语句实现多分支选择结构的方法。
3.掌握利用for语句实现循环结构的方法。
4.掌握利用while语句实现循环结构的方法。
5.掌握MATLAB函数的编写及调试方法。
二、实验的设备及条件
计算机一台(带有MATLAB7.0以上的软件环境)。
M文件的编写:
启动MATLAB后,点击File|NewM-File,启动MATLAB的程序编辑及调试器(Editor/Debugger),编辑以下程序,点击141e:
Save保存程序,注意文件名最好用英文字符。
点击Debug|Run运行程序,在命令窗口查看运行结果,程序如有错误则改正
三、实验容
1.编写求解方程^2+hx+c=0的根的函数(这个方程不一定为一元二次方程,因“、b、C的不同取值而定),这里应根据4、b、C的不同取值分别处理,有输入参数提示,当cm,c~=0时应提示“为恒不等式!
”。
并输入几组典型值加以检验。
(提示:
提示输入使用input函数)
2.输入一个百分制成绩,要求输出成绩等级A+、A、B、C、D、Eo其中100分为A+,90分〜99分为A,80分〜89分为B,70分〜79分为C,60分〜69分为D,60分以下为E。
要求:
(1)用switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
(提示:
注意单元矩阵的用法)
3•数论中一个有趣的题目:
任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。
重复此过程,最终得到的结果为1。
如:
2t1
3t10t5t16t8t4t2t1
6t3t10t5t16t8t4t2t1
运行下面的程序,按程序提示输入沪1,2,3,5,7等数来验证这一结论。
请为关键的Matlab语句填写上相关注释,说明其含义或功能。
%classicM3n+r*problemfromnumbertheory,while1
n=input('Entern,negativequits:
*);
ifn<=0
break
end
a=n;
whilen>1
ifrem(n,2)==0
n=n/2;
else
n=3*n+1;
end
a二[a,n];
end
a
end
选择一些数据测试你编写的函数。
5.编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。
functionImx,maxx,minxtrmsx]=myfun2(x)方均根值(RootMean
Square)的计算公式为:
用下面数据测试你写的函数:
(1)x=sin(0:
0.01:
6*pi)
(2)x=rand(1,200),得到的x为200个(0,1)之间均匀分布的随机数。
6.根据—=4+4+4+••••••+4,求兀的近似值。
当n分别取100、1000、6I22232n2
10000时,结果是多少?
思考题:
有一分数序列:
13581321
■•••
12’3’5。
813’
编写一段程序,求前16项的和。
四、实验报告要求(包含预习报告要求和最终报告要求)
1.实验名称
2.
预习报告要求
最终报告要求
实验目的
3•实验设备及条件
4.实验容及要求
5.实验程序设计
指程序代码。
6•实验结果及结果分析
没有数据的简单描述实验
实验结果要求必须客观,有数据的可以记录数据,现象。
结果分析是对实验结果的理论评判。
7•实验中岀现的问题及解决方法
8•思考题的回答
四、实验报告的提交方式
Word文档,命名方式:
实验号—你的学号_!
!
!
例如本次实验:
实验一_000000001_三.doc
(信息101提交报告):
Email:
matlabxx01163.
(网络工程101提交作业):
Ema订:
Matlabwg01163.(注意网络班的M是大写的)
下一次课前提交,过期不收!
五、参考文献
参考教材和Matlab帮助文件。
1.实验名称
MATLAB程序设计
2.实验目的
1.掌握利用if语句实现选择结构的方法。
2.掌握利用switch语句实现多分支选择结构的方法。
3.掌握利用for语句实现循环结构的方法。
4.掌握利用while语句实现循环结构的方法。
5.掌握MATLAB函数的编写及调试方法。
3.实验设备及条件
计算机一台(带有MATLAB7.0以上的软件环境)。
4.实验容及要求
把实验容的应用题,用MATLAB的语法编写出来,并运行成功,注意题与题之间用相应注释分割。
5.实验程序设计
%1
disp('—元二次方程计算器,请输入下列数值进行计算:
’);
a=input(ra=,);
b二input('b二');
c=input(fc=,);
ifa==0&b==0&c~=0
disp('此为恒不等式');
else
d=b*b~4*a*c;
x=[(-b+sqrt(d))/(2*a),(-b~sqrt(d))/(2*a)];
disp(['xl二',num2str(x
(1)),',x2二',num2str(x
(2))]);
end
%2
scores二input('成绩等级划分请输入一个百分制成绩,查询划分等级:
’);
switchscores
case{100}
rate=rA+r:
casenum2cell(90:
99)
rate=,Af:
casenum2cell(80:
89)
rate二;
casenum2cell(70:
79)
rate=FCF:
casenum2cell(60:
69)
rate=,Dr;
casenum2cell(0:
59)
rate=rEf:
otherwise
disp('输出出错');
end
disp(rate)
%3
%classic"3n+l"problemfromnumbertheory.
while1
n=input(FEnternfnegativequits:
r):
%输入一个非负整数
ifn<=0%如果输入的数为负数,则不做操作
break
end
a=n;%将n的值赋值给a
whilen>l%满足条件n>l时循环下列语句
ifrem(nt2)==0
n=n/2;else
n=3*n+l;enda=[atn]:
诉循环
end
a
end
%当门能被2整除则n除以2
%如果不能被整除,则n乘以3加1
%输出数组[a,n],并对比n是否>1,大于则继续上
%输出最后的结果a
%4myfunl.m
%
clc
formatcompact
formatlongg
x二input('请输入x的值:
’);y=tranl(x);
disp('y二')disp(y)
%4tran.m
%
functiony二myfunl(x)
%当x<=0y=sin(x);
%当3>x>0y=x;
%当x>3y=-x+6;
ifx〈二0
y=sin(x);
elseif3>x>0
y=x;
elsex>3
y=_x+6;
end
%5tran・m
%
function[mx,max_x,minx,rmsxj=myfun2(x)
%分别是平均值,最大值,最小值,均方根值
mx=mean(mean(x))
max_x=max(max(x))
min_x=min(min(x))
a=sqrt(mean(x.°2));
rms_x=sqrt(mean(a・2))
%5myfun2・m
%
x=input(r平均值、最大值、最小值、均方根值的计算,请输入x的值,:
’);[mx,maxxtminxtrmsx]=tran(x);
disp('平均值为')
mx
dispC最大值为')
max_x
disp('最小值为')
minx
dispC均方根值为’)rms_x
%6
disp('(pi"2)/6=(l/「2)+(l/2"2)+(l/3"2)++(l/n"2),求pi的近似值')
approximation^O;
n=input('请输出n值:
’);
approximation=sqrt(sum(1./(1:
n)・2)*6);
approximation
6•实验结果及结果分析第一题
一元二次方程(ax"2+bx+c=0)计算器,请输入下列数值进行计算:
a=2
b=l
c=3
xl二-0.25+1.199i.x2二-0.25-1.199i
一元二次方程(ax「2+bx+c二0)计算器,请输入下列数值进行计算:
a=0
b=0
c=»2
此为恒不等式
第二题
成绩等级划分一一请输入一个百分制成绩,查询划分等级:
111输出出错
成绩等级划分一一请输入一个百分制成绩,查询划分等级:
55
E
第三题
%classic"3n+l"problemfromnumbertheory.
while1
n=input(rEnternfnegativequits:
r):
%輸入一个非负整数
%输出最后的结果a
end
第四题
请输入X的值:
-1
y=
-0.7897
请输入x的值:
2
y=
2
请输入x的值:
9
ans=
1
y=
-3
第五题
请输入x的值:
sin(0:
0.01:
6*pi)平均值为
mx=
-1.1256e-007
最大值为
maxx=
1.0000
最小值为
minx=
-1.0000
均方根值为
rms_x=
0.7071
请输入x的值:
rand(1,200)
平均值为
m_x=
0.4969
最大值为
maxx=
0.9943
最小值为
minx=
0.0099
均方根值为
rms_x=
0.5707
笫六题
(pi"2)/6=(1/「2)+(1/2"2)+(1/3"2)+…
…+(l/n"2),求pi的近似值
请输出n值:
100
approximation=
3.1321
(pi~2)/6=(1/广2)+(1/2"2)+(1/3"2)+…
…+(1/n2),求pi的近似值
请输出n值:
1000
approximation=
3.1406
(pi,2)/6=(1/厂2)+(1/2"2)+(1/3"2)+……+(l/rT2).求pi的近似值请输出n值:
10000
approximation=
3.1415
7•实验中出现的问题及解决方法
对函数的嵌套关系理解混乱
解决:
反复尝试,得出正确的嵌套关系。
'没有运行成功。
解决:
需要加符号U不然无法得出预期结果&思考题的回答
a=3;
b=2;s=l/2;
fori=l:
15s=s+a/b;c=a;a=a+b;b=c;
end
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 MATLAB 程序 设计 报告