实验二MATLAB程序设计含实验报告文档格式.docx
《实验二MATLAB程序设计含实验报告文档格式.docx》由会员分享,可在线阅读,更多相关《实验二MATLAB程序设计含实验报告文档格式.docx(13页珍藏版)》请在冰点文库上搜索。
任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。
重复此过程,最终得到的结果为1。
如:
2→1
3→10→5→16→8→4→2→1
6→3→10→5→16→8→4→2→1
运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。
请为关键的Matlab语句填写上相关注释,说明其含义或功能。
%classic"
3n+1"
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];
a
4.编写一个函数,计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。
function[y]=myfun1(x)
选择一些数据测试你编写的函数。
5.编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。
function[m_x,max_x,min_x,rms_x]=myfun2(x)
方均根值(RootMeanSquare)的计算公式为:
用下面数据测试你写的函数:
(1)x=sin(0:
0.01:
6*pi)
(2)x=rand(1,200),得到的x为200个(0,1)之间均匀分布的随机数。
6.根据
,求
的近似值。
当n分别取100、1000、10000时,结果是多少?
思考题:
有一分数序列:
编写一段程序,求前16项的和。
四、实验报告要求(包含预习报告要求和最终报告要求)
最终报告要求
预习报告要求
1.实验名称
2.实验目的
3.实验设备及条件
4.实验内容及要求
5.实验程序设计
指程序代码。
6.实验结果及结果分析
实验结果要求必须客观,有数据的可以记录数据,没有数据的简单描述实验现象。
结果分析是对实验结果的理论评判。
7.实验中出现的问题及解决方法
8.思考题的回答
四、实验报告的提交方式
Word文档,命名方式:
实验号_你的学号_姓名!
!
例如本次实验:
实验一_000000001_张三.doc
(信息101提交报告邮箱):
E_mail:
(网络工程101提交作业邮箱):
M(注意网络班的M是大写的)
下一次课前提交,过期不收!
五、参考文献
参考教材和Matlab帮助文件。
1.实验名称
MATLAB程序设计
2.实验目的
1.掌握利用if语句实现选择结构的方法。
3.实验设备及条件
4.实验内容及要求
把实验内容的应用题,用MATLAB的语法编写出来,并运行成功,注意题与题之间用相应注释分割。
5.实验程序设计
%1
disp('
一元二次方程计算器,请输入下列数值进行计算:
a=input('
a='
b=input('
b='
c=input('
c='
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(['
x1='
num2str(x
(1)),'
x2='
num2str(x
(2))]);
%2
scores=input('
成绩等级划分——请输入一个百分制成绩,查询划分等级:
switchscores
case{100}
rate='
A+'
;
casenum2cell(90:
99)
A'
casenum2cell(80:
89)
B'
casenum2cell(70:
79)
C'
casenum2cell(60:
69)
D'
casenum2cell(0:
59)
E'
otherwise
输出出错'
disp(rate)
%3
%输入一个非负整数
=0%如果输入的数为负数,则不做操作
%将n的值赋值给a
1%满足条件n>
1时循环下列语句
ifrem(n,2)==0%当n能被2整除则n除以2
else%如果不能被整除,则n乘以3加1
a=[a,n];
%输出数组[a,n],并对比n是否>
1,大于则继续上诉循环
a%输出最后的结果a
%4myfun1.m
%-------------------
clc
formatcompact
formatlongg
x=input('
请输入x的值:
y=tran1(x);
y='
)
disp(y)
%4tran.m
%--------------------
functiony=myfun1(x)
%当x<
=0y=sin(x);
%当3>
x>
0y=x;
%当x>
3y=-x+6;
ifx<
y=sin(x);
elseif3>
y=x;
elsex>
3
y=-x+6;
%5tran.m
%------------------------
%分别是平均值,最大值,最小值,均方根值
m_x=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的值,:
[m_x,max_x,min_x,rms_x]=tran(x);
平均值为'
m_x
最大值为'
max_x
最小值为'
min_x
均方根值为'
rms_x
%6
(pi^2)/6=(1/1^2)+(1/2^2)+(1/3^2)+……+(1/n^2),求pi的近似值'
approximation=0;
n=input('
请输出n值:
approximation=sqrt(sum(1./(1:
n).^2)*6);
approximation
6.实验结果及结果分析
第一题
一元二次方程(ax^2+bx+c=0)计算器,请输入下列数值进行计算:
a=2
b=1
c=3
--------------------------------------
a=0
b=0
c=>
>
2
此为恒不等式
第二题
111
输出出错
55
E
_____________________________________________________________________
第三题
=0%如果输入的数为负数,则不做操作
%将n的值赋值给a
1%满足条件n>
ifrem(n,2)==0%当n能被2整除则n除以2
else%如果不能被整除,则n乘以3加1
%输出数组[a,n],并对比n是否>
a%输出最后的结果a
第四题
-1
y=
---------------------------
2
--------------------------
9
ans=
1
-3
——————————————————————————————
第五题
sin(0:
平均值为
m_x=
-1.1256e-007
最大值为
max_x=
1.0000
最小值为
min_x=
-1.0000
均方根值为
rms_x=
0.7071
rand(1,200)
0.4969
0.9943
0.0099
0.5707
第六题
(pi^2)/6=(1/1^2)+(1/2^2)+(1/3^2)+……+(1/n^2),求pi的近似值
100
approximation=
3.1321
1000
3.1406
10000
3.1415
7.实验中出现的问题及解决方法
对函数的嵌套关系理解混乱
解决:
反复尝试,得出正确的嵌套关系。
'
^'
没有运行成功。
需要加符号'
.'
,不然无法得出预期结果
8.思考题的回答
a=3;
b=2;
s=1/2;
fori=1:
15
s=s+a/b;
c=a;
a=a+b;
b=c;