专业基础课程设计.docx
- 文档编号:25353363
- 上传时间:2023-06-07
- 格式:DOCX
- 页数:24
- 大小:132.03KB
专业基础课程设计.docx
《专业基础课程设计.docx》由会员分享,可在线阅读,更多相关《专业基础课程设计.docx(24页珍藏版)》请在冰豆网上搜索。
专业基础课程设计
课程设计任务书
学生姓名:
_____崔运宏__专业班级:
电信1304班
指导教师:
胡君萍工作单位:
信息工程学院
题目:
专业基础实践第7套综合题
初始条件:
(1)提供实验室机房及其Matlab6.5以上版本软件;
(2)《MATLAB教程》学习。
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求):
(1)选择一本《MATLAB教程》,认真学习该教程的全部内容,包括基本使用方法、数组运算、矩阵运算、数学运算、程序设计、符号计算、图形绘制、GUI设计等内容;
(2)对该套综合题的10道题,进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表)。
(3)对实验结果进行分析和总结;
(4)要求阅读相关参考文献不少于5篇;
(5)根据课程设计有关规范,按时、独立完成专业基础实践说明书。
时间安排:
(1)布置课程设计任务,查阅资料,学习《MATLAB教程》2.5天;
(2)进行编程设计2天;
(3)完成专业基础实践报告书1天;
(4)答辩0.5天;
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
前言
MATLAB简介
MATLAB软件由美国Math Works公司于1984年推出,经过不断的发展和完善,如今己成为覆盖多个学科的国际公认的最优秀的数值计算仿真软件。
MATLAB具备强大的数值计算能力,许多复杂的计算问题只需短短几行代码就可在MATLAB中实现。
作为一个跨平台的软件,MATLAB已推出Unix、Windows、Linux和Mac等十多种操作系统下的版本,大大方便了在不同操作系统平台下的研究工作。
MATLAB软件具有很强的开放性和适应性。
在保持内核不变的情况下,MATLAB可以针对不同的应用学科推出相应的工具箱(toolbox),目前己经推出了图象处理工具箱、信号处理工具箱、小波工具箱、神经网络工具箱以及通信工具箱等多个学科的专用工具箱,极大地方便了不同学科的研究工作。
国内已有越来越多的科研和技术人员认识到MATLAB的强大作用,并在不同的领域内使用MATLAB来快速实现科研构想和提高工作效率。
MATLAB提供了20类图像处理函数,涵盖了图像处理的包括近期研究成果在内的几乎所有的技术方法,是学习和研究图像处理的人员难得的宝贵资料和加工工具箱。
这些函数按其功能可分为:
图像显示;图像文件I/O;图像算术运算;几何变换;图像登记;像素值与统计;图像分析;图像增强;线性滤波;线性二元滤波设计;图像去模糊;图像变换;邻域与块处理;灰度与二值图像的形态学运算;结构元素创建与处理;基于边缘的处理;色彩映射表操作;色彩空间变换;图像类型与类型转换。
Matlab的功能
1) 强大的科学计算机数据处理能力
2) 出色的图形处理功能
3) 应用广泛的模块集合工具箱
4) 实用的程序接口和发布平台
Matlab的典型应用
1) 数据分析
2) 数值与符号计算;
3) 工程与科学绘图;
4) 控制系统设计;
5) 航天工业;
6) 汽车工业;
7) 生物医学工程;
8) 语音处理;
9) 图像与数字信号处理;
10) 财务、金融分析;
11) 建模、仿真及样机开发;
12) 新算法研究开发;
13) 图形用户界面设计。
二设计题目
第7套题:
Matlab应用课程设计7
1.求[100,200]之间第一个能被21整除的整数。
2.绘制余弦曲线y=cos(x)和指数函数y=x^2曲线。
3.计算2+4+6...+100的值,当和大于2000时终止计算。
4.分析下面每条指令的功能并运行,观察执行结果。
(1)X=0:
0.25:
3;
Y=X.*exp(-X);
plot(X,Y),xlabel(‘x’),ylabel(‘y’),title(‘y=x*exp(-x)’);
(2)A=zeros(3,5)
A(:
)=-7:
7
L=abs(A)>4
islogical(L)
X=A(L)
(3)A=[1:
5;6:
10]
pow2(A)
(4)A=zeros(3,2)
A(:
)=1:
6
A=A*(1+i)
A1=A.’
B1=A’
(5)A=ones(2,3)
B=ones
(2)
C=eye(4)
D=diag(C)
E=repmat(C,1,3)
5.利用while…end循环结构编程求出1+3+5…+101的值。
6.随机生成一个10000×3的矩阵,并绘制其柱状图。
7.利用switch…case编写以下程序:
某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):
price<200无折扣
200
price<5005%折扣
500
price<100010%折扣
Price
100015%折扣
输入所售商品的价格,求其实际销售价格。
8.利用函数调用编写函数文件,求半径r分别为0.5与5时圆的面积与周长。
9.已知
,其中t的范围是[010],计算y的微分和积分并给出曲线图。
10.编写程序,用plot(x,y)绘制下图所示曲线。
图2.1曲线图
三设计内容
3.1题一
1.求[100,200]之间第一个能被21整除的整数。
分析:
要求(100,200)之间第一个能被21整除的整数。
首先需要一个循环变量n,使其从100到200按步长为1递增,每增加一就用21去除看能否整除,若不能则继续循环,若能则跳出循环,输出n即为所需整数。
1)程序代码
forn=100:
200%定义n的区间为100到200的for循环语句
ifmod(n,21)==0%用if语句来判断n除以21的余数是否为0
x=n;%将整除的n值赋给x
break;%跳出for循环
end%结束if循环
end%结束for循环
x
2)运行结果为
>>x
x=
105
>>
3.2题二
2.绘制余弦曲线y=cos(x)和指数函数y=x^2曲线。
分析:
绘制曲线用plot函数。
为了方便观察两个图像,应适当是指横纵坐标的大小,这需要用到axis([xminxmaxyminymax])函数。
设置其x在(0.2*pi),y为(-3,3)较为合适。
1)程序代码
x=0:
pi/30:
2*pi
y1=cos(x);
y2=x.*x;
plot(x,y1,’-ro’,x,y2)
axis([0,2*pi,-3,-3])
h=legend(‘cos_x’,’x.*x’,2);
2)运行结果
图3.1y=cosx和y=x^2曲线图
3.3题三
3.计算2+4+6+...+100的值,当和大于2000时终止计算。
分析:
由题意可知,该题是求偶数的和第一次大于2000时的值,因要设置累加后的值放在sum里面,用while循环,领m的初值为2步长为2,终值为100.
1)程序代码:
sum=0;
m=2;
whilesum<=2000
sum=sum+m;
m=m+2;
end
sum
m
2)运行结果:
sum=
2070
m=
92
3.4题四
4.分析下面每条指令的功能并运行,观察执行结果。
3.4.1
(1)X=0:
0.25:
3;
Y=X.*exp(-X);
plot(X,Y),xlabel(‘x’),ylabel(‘y’),title(‘y=x*exp(-x)’);
分析:
此题中需要用到绘制二维图形的基本函数plot,常用形式为plot(x,y1,x,y2)。
并用title(‘y=x*exp(-x)’)为他加上图形标题;以及用以及用xlabel(‘x’)为他加上x轴说明;和用ylabel(‘y’)为他加上y轴说明。
1)程序代码:
x=0:
0.25:
3;
y=x.*exp(-x);
plot(x,y),xlabel(‘x’),ylabel(‘y’),title(‘y=x*exp(-x)’);
2)运行结果:
图3.2y=x*exp(-x)的曲线图
3.4.2
(2)A=zeros(3,5)
A(:
)=-7:
7
L=abs(A)>4
islogical(L)
X=A(L)
分析:
A=zeros(3,5)会产生一个3*5阶的全0矩阵A,A(:
)=-7:
7会将矩阵元素从-7到7依次赋值,L=abs(A)>4会标记矩阵A中元素的绝对值大于4的元素,islogic(L)判断L是不是逻辑数,X=A(L)去除A中绝对值大于4的元素组成一个新的矩阵A。
1)程序代码:
A=zeros(3,5)
A(:
)=-7:
7
L=abs(A)>4
islogical(L)
X=A(L)
2)运行结果:
A=
00000
00000
00000
A=
-7-4-125
-6-3036
-5-2147
L=
10001
10001
10001
ans=
1
X=
-7
-6
-5
5
6
7
3.43
(3)A=[1:
5;6:
10]
pow2(A)
分析:
A=[1:
5;6:
10]为矩阵的第一行从1到5依次赋值,第二行,从6到10依次赋值,pow2(A)将A按矩阵运算出平方。
1)程序代码:
A=[1:
5;6:
10]
pow2(A)
2)运行结果:
A=
12345
678910
ans=
2481632
641282565121024
3.4.4
(4)A=zeros(3,2)
A(:
)=1:
6
A=A*(1+i)
A1=A.’
B1=A’
分析:
A=zeros(3,2)得到一个3*2的全零矩阵。
A(:
)=1:
6将1到6内的整数值赋给A,形成新的矩阵A。
A=A*(1+i)计算A*(1+i),得到新矩阵A。
A1=A.'得到非共轭转置矩阵A1。
B1=A'得到共轭转置矩阵B1。
1)程序代码:
A=zeros(3,2)
A(:
)=1:
6
A=A*(1+i)
A1=A.’
B1=A’
2)运行结果
A=
00
00
00
A=
14
25
36
A=
1.0000+1.0000i4.0000+4.0000i
2.0000+2.0000i5.0000+5.0000i
3.0000+3.0000i6.0000+6.0000i
A1=
1.0000+1.0000i2.0000+2.0000i3.0000+3.0000i
4.0000+4.0000i5.0000+5.0000i6.0000+6.0000i
B1=
1.0000-1.0000i2.0000-2.0000i3.0000-3.0000i
4.0000-4.0000i5.0000-5.0000i6.0000-6.0000i
3.4.5
(5)A=ones(2,3)
B=ones
(2)
C=eye(4)
D=diag(C)
E=repmat(C,1,3)
分析:
A=ones(2,3) 得到2*3全1矩阵A。
B=ones
(2)得到全1二阶方阵B。
C=eye(4)得到四阶单位矩阵C。
D=diag(C)提取C的对角矩阵D。
E=repmat(C,1,3) 复制矩阵C并在第一行平铺三个。
1)程序代码:
A=ones(2,3)
B=ones
(2)
C=eye(4)
D=diag(C)
E=repmat(C,1,3)
2)运行结果:
A=
111
111
B=
11
11
C=
1000
0100
0010
0001
D=
1
1
1
1
E=
100010001000
010001000100
001000100010
000100010001
3.5题五
5.利用while,end循环结构编程求出1+3+5„+101的值。
分析:
用while,end循环结构编程求1+3+5…+101需要一个循环变量n和一个累加变量s,最终得到的s即为求和的值。
1)程序代码:
s=0;
n=1;
whilen<102
s=s+n;
n=n+2;
end
s
2)运行结果:
s=
2601
>>
3.6题六
6.随机生成一个10000×3的矩阵,并绘制其柱状图。
分析:
生成随机矩阵需要用到函数rand(),绘制柱状图需要用到函数bar()。
1)程序代码:
A=rand(10000,3);
bar(A)
2)运行结果:
图3.3随机矩阵结果图
3.7题七
7.利用switch…case编写以下程序:
某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):
price<200无折扣
200
price<5005%折扣
500
price<100010%折扣
Price
100015%折扣
输入所售商品的价格,求其实际销售价格。
分析:
用switch语句来编写,需要将价格的不同区间对应不同的数字,用fix函数将price/100的结果靠近0取整后,可以使用小于200对应情况为【01】,200到500对应情况为【234】,500到1000对应情况为【5789】。
同时为避免用户输入负数这种不可能的价格情况,用while语句设置一个循环判断,是用户输入小于0的数字时提示其输入错误,需要重新输入,这样的话剩下的最后一种情况即为价格大于1000的情况,用otherwise语句编写。
1)程序代码:
price=input(‘price’);
whileprice<0
disp('请输入大于0的数据')
price=input(‘price’);
end
switchfix(price/100)
case{0,1}
rate=0;
case{2,3,4}
rate=5/100;
case{5,6,7,8,9}
rate=10/100;
otherwise
rate=15/100;
end
price==price*(1-rate)
2)运行结果:
a)当输入为负数时:
price-100
请输入大于0的数据
Price
b)当输入小于200时:
price150
price=
150
c)当输入大于200小于500时:
price300
price=
285
d)当输入大于500小于1000时:
price750
price=
675
e)当输入大于1000时:
price1200
price=
1020
3.8题八
8.利用函数调用编写函数文件,求半径r分别为0.5与5时圆的面积与周长。
分析:
编写函数要用到function语句,改程序需要输入半径r一个变量,然后输出周长l与面积s两个变量。
周长计算公式为l=2*pi*r,面积计算公式为s=pi*r*r。
1)程序代码:
function[sl]=circle(r)%声明函数circle
s=pi*r^2;%面积公式
l=2*pi*r;%周长公式
s
l
end
2)运行结果:
>>circle
(1)
s=
3.1416
l=
6.2832
3.9题九
9.已知
,其中t的范围是[010],计算y的微分和积分并给出曲线图。
分析:
首先需要定义两个变量t和y,将所求函数用y=exp(-1)*cos(t)表示出来,求积分需要用到int()函数,求微分需要用到diff()函数,vpa函数用于控制精度,画图像用ezplot()函数比较简单,只需方程式就可画出图像。
1)程序代码:
symstyabcd%定义变量ty
y=exp(-1)*cos(t)
a=int(y,0,10);%求y的积分并赋给a
b=diff(y,0,10);%求y的微分并赋给b
ezplot(y,[0,10])%画出y的图像
c=vpa(a);%控制a的精度后并把其赋给c
d=vpa(b);%控制b的精度后并把其赋给d
c
d
2)运行结果:
y=
828390857088487/2251799813685248*cos(t)
c=
-.269467031
d=
-.367879441171442334982*cos(t)
图3.4
曲线图
3.10题十
10.编写程序,用plot(x,y)绘制下图所示曲线。
图3.5曲线图
3.10.1
分析:
由图像可知函数表达式为y=3*x+1,x的取值范围为(0,5),画图像用plot函数,再用xlabel(‘x’),ylabel(‘y’)两个语句确定其横纵坐标的名称。
1)程序代码:
x=0:
0.001:
5;
y=3*x+1;
plot(x,y);
xlabel(‘x’),ylabel(‘y’);
2)运行结果:
图3.6y=3*x+1图
3.10.2
分析:
由图可知这是两个表达式的图像组成的图形,分别为y1=x+1和y2=-x+3,用plot()函数绘制其图形,但要注意的是画出第一个图形后需要用holdon语句将第一个图形锁住,再画第二个图形,否则第二个图形会将第一个图形覆盖,无法得出如题所示图形。
1)程序代码:
x=0:
0.1:
1;
y1=x+1;
y2=-x+3;
plot(x,y1),holdon,plot(x,y2); %画出y1和y2的两条曲线并同时显示
2)运行结果:
图3.7y1=x+1和y2=-x+3的曲线图
四心得体会
Matlab作为一款数学处理软件,其功能是非常强大的,通过对该软件的学习,我有学会了一种方法去解决比较纠结的数学问题。
刚开始我是先找了一本StephenJ.Chapman著的《MATLAB编程》这本书,通过对这本书的学习,我对Matlab有了初步的了解,然后又在网上找了些视频,跟着学做了几次就开始自己做了,感觉只要是以认真学Matlab不是很难。
首先,Matlab是针对矩阵的,然后好多的与方程的解有关的问题便迎刃而解,还有就是比较强大的绘图功能,以前在高中的时候只看过书本上做的一些比较复杂的图像,但现在可以自己做感觉还是蛮激动的,Matlab有个很方便的工具,就是它的帮助,遇到什么不懂的问题只要查一下help就能解决了。
在help中输入不理解的函数语句,就会弹出非常详细的解释,当然这是全英文的,不过正好可以锻炼一下我的英文水平。
遇到看不懂的,可以自己把它导入有道里面,一般都能找到翻译,还有些错误不能解决的我就自己还上网XX,越发局的XX是一个非常强大的搜索引擎,上面有好多与Matlab相关的知识,所以说网络是个非常好的学习语言的平台,可以通过网络与其他人交流经验。
通过这次课程设计,我体会到了Matlab的强大功能,其次就是它在我们专业中的用处也是很大的,比如说在信号处理和自动控制上的应用等等,以后我还得深入学习Matlab,并在以后的专业学习中去应用它。
参考文献
[1]StephenJ.Chapman.《MATLAB编程》[M].邢树军郑碧波译.国外高校电子信息类优秀教材出版社.2010.
[2]余成波.《数字信号处理及MATLAB实现》.清华大学出版社
[3]刘泉阙大顺郭志强.《数字信号处理原理与实现》.电子工业出版社.2011
本科生课程设计成绩评定表
姓名
崔运宏
性别
男
专业班级
电信1304班
科程设计题目:
专业基础实践课程设计
课程设计答辩或质疑记录:
成绩评定依据:
最终评定成绩(以优、良、及格、不及格评定):
指导教师签字:
年 月 日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 专业 基础 课程设计