《实验1 matlab编程b.doc》由会员分享,可在线阅读,更多相关《实验1 matlab编程b.doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数字信号处理实验指导书2实验2 MATLAB程序设计基础1 MATLAB程序设计1.1 M命令文件M文件是一个文本文件,输入edit,按回车,可启动MATLAB文本编辑器.练习1 编一个命令文件,将 a, b值互换.首先打开文本编辑器,输入以下内容,按F5或save and run ,以myfile.m 存盘.clear a=1 3 4 7 9;b=2 4 6 8 10; c=a; a=b; b=c; a b 1.2 程序流程语句 MATLAB的程序流程语句主要包括选择结构,有if, switch , try语句和循环结构,有while ,for语句 , MATLAB的程序流程语句都以end为
2、结束标志.1.2.1 if 语句 1 单分支if 语句 if 表达式语句组 end练习2 输入一个数,小于10就输出这个数.n=input(enter a number,n=);if n2 双分支if 语句if 表达式 语句组1else 语句组2end练习3 给定两个实数,按代数值的大小输出其中大的.a=input(enter a number,a=);b=input(enter b number, b=);if ab max=a;else max=b; maxend观看运行结果enter a number,a=6enter b number, b=7max =73 多分支if 语句if 表达
3、式1 语句1elseif表达式2 语句2elseif表达式n 语句nelse 语句n+1end练习4 任意三个数A , B, C, 要求按由大到小的顺序输出,其中最大数放入A, 最小数放入C中.A=input(input a number A=);B=input(input a number B=);C=input(input a number C=);if AB T=A;A=B;B=T;end if AC T=A;A=C;C=T; end if BC T=B;B=C;C=T; end A B C观看运行结果input a number A=5input a number B=6input a
4、 number C=-5A = 6B = 5C = -5练习5给定三个数A , B, C, 要求按由大到小的顺序输出,其中最大数放入A, 最小数放入C中.A=13;B=24;C=-45;if AB T=A;A=B;B=T;elseif AC T=A;A=C;C=T; elseif BC T=B;B=C;C=T; end A B C观看运行结果A = 24B = 13C = -451.2.2 switch 语句 它是多分支选择语句.Switch 表达式Case 表达式1 语句组1Case 表达式2 语句组2Case 表达式n 语句组n otherwise 语句组n+1end 练习6 某商场商品打
5、折,标准如下:price200 没有打折200=price500 3%折扣500=price1000 5%折扣1000=price2500 8%折扣2500 *Inner matrix dimensions must agree.2 MATLAB绘图2.1 二维绘图2.1.1 plot(x,y) x and y 可以是向量或矩阵练习12 x,y 是同样长度的向量,绘制y元素对应于x元素的曲线 x=0:0.05:4*pi; y=sin(x); plot(x,y)练习13x为向量,y是列长与x相同的矩阵,绘制y对应于x 的曲线图 x=0:pi/50:2*pi; c=1 2 3; y=c*sin(x
6、); plot(x,y);练习14 x为矩阵,则绘制x相对于行号的一组二维图形 x=1 2 3;4 5 6;7 8 9; plot(x)2.2 三维图形2.2.1 peaks 用于创建双峰涵数和用双峰涵数绘图 x y z 是n*n方阵矩阵 x, y, z=peaks(n)2.2.2 meshgrid创建网格矩阵 x ,y, z=meshgrid(x,y,z)练习15创建二维网格矩阵 x=1 2 3 4;y=5 6 7 8 9;X,Y=meshgrid(x,y,z);X Y观看运行结果X = 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4Y = 5 5 5 5 6
7、 6 6 6 7 7 7 7 8 8 8 89 9 9 9说明:如果默认了参数Z, 则创建二维n*m网格矩阵.2.2.3 plot3(x,y,z)练习16 建立并绘制一条三维曲线clear clcz=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)2.2.4 surf(x,y,z) 填充颜色的三维网格曲面练习17 绘制z=的图形x=-10:0.5:10;y=-8:0.5:8;X,Y=meshgrid(x,y);Z=sin(sqrt(X.2+Y.2)+eps)./(sqrt(X.2+Y.2)+eps);surf(X,Y,Z);练习18 Matlab function is introduced in teaching material appendix C实验作业 完成下面练习题,并写实验报告.练习18计算分段涵数 x x1 y= x-1 1x=2练习19 求练习20 给出一个学生的百分制成绩,要求转为成绩等级输出,90以上为A , 8089分为B, 7079分为C , 6069分为D , 60分以下为E练习21 绘制方程 在x=-2 2,y=-1,1区间的图形提示:用plot3 and surf 分别绘制练习22 绘制内插涵数的二维图形.
限制150内