MATLAB通信系统仿真实验报告(2014-2015学年第2学期)专业年级通信2012级班姓名学号指导教师刘金梅实验学时18实验时间2-9周,11周,周四3、4节实验地点信息楼112机房---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---实验一、MATLAB的基本使用与数学运算目的:学习MATLAB的基本操作,实现简单的数学运算程序。内容:1、要求在闭区间[0,2π]上产生具有10个等间距采样点的一维数组。试用两种不同的指令实现。2、用M文件建立大矩阵x:[0.10.20.30.40.50.60.70.80.91.11.21.31.41.51.61.71.81.92.12.22.32.42.52.62.72.82.93.13.23.33.43.53.63.73.83.9]3、已知A=[5,6;7,8],B=[9,10;11,12],用MATLAB分别计算A+B、A*B、A.B、A^3、A.^3、A/B、A\B。4、任意建立矩阵A,然后找出在[10,20]区间的元素位置。程序代码及运行结果:1.(1)程序代码:方法1:a=0:2*pi/10:2*pi方法2:a1=inspace(0,2*pi,10)(2)运行结果如图1-1所示:图1-12.(1)程序代码:x=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9;1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9;2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9;3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9]运行结果如图1-2所示:---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---图1-23.(1)程序代码:A=[5,6;7,8];B=[9,10;11,12];C=A+BD=A*BE=A.*BF=A^3G=A.^3H=A/BI=A\B(2)运行结果:C=14161820D=111122151166E=45607796F=881102611971394G=125216343512H=3.0000-2.00002.0000-1.0000I=-3.0000-4.00004.00005.00004.(1)程序代码:>>A=[4,15,-45,10,6;56,0,17,-45,0]B=find(A>=10&A<=20)(2)运行结果:A=415-4510656017-450---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---B=367总结:通过本次实验学习MATLAB的基本操作,实现简单的数学运算程序。第一次MATLAB实验,没有注意到点乘,在输入代码是有时候没注意到是英文输入还是中文输入。通过实验学会了在同一个窗口显示几个算法指令,像数组和矩阵的各种运算符号,尤其要注意到两者的区别。例如A*B是是指内维相同的矩阵相乘,而A*B是指A数组和B数组对应元素相乘。同时也要注意到左除和右除的区别。---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---实验二、MATLAB程序的编写目的:掌握顺序结构、选择结构、循环结构程序设计方法。学会编写函数。内容:1、编写程序,建立向量N=[1,2,3,4,5],然后利用向量N产生下列向量:(1)2,4,6,8,10,(2)1/2,1,3/2,2,5/2(3)1,1/2,1/3,1/4,1/5(4)1,1/4,1/9,1/16,1/252、从键盘输入一个三位整数,将它反向输出,如输入639,输出936。输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。要求:(1)分别用if语句和switch语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出错误信息。3、输入20个两位随机数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB的max函数、min函数来实现。4、写出下列程序的输出结果。(1)s=0;a=[12,13,14,15,16,17,18,19,20,21,22,23];fork=aforj=1:4ifrem(k(j),2)~=0s=s+k(j);endendends(2)命令文件exe.mglobalxx=1:2:5;y=2:2:6;exsub(y);xy(3)函数文件sub.mfunctionfun=exsub(z)globalxz=3*x;x=x+z;程序代码及运行结果:1.(1)程序代码:N=[1,2,3,4,5];---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---formatratA=N.*2B=N./2C=N.^(-1)D=N.^(-2)(2)运行结果如图2-1所示:图2-12.(1)程序代码:反向输出:m=input('请输入一个三位数:');m1=fix(m/100);m2=rem(fix(m/10),10);m3=rem(m,10);m=m1+m2*10+m3*100;disp(m)if语句,实现输入一个百分制成绩,输出成绩等级:c=input('请输入一个百分制数');ifc>=90&c<=100disp('A');elseifc>=80&c<90;disp('B');elseifc>=70&c<80;disp('C');elseifc>=60&c<70;disp('D');---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---elseifc>=0&c<60;disp('E');elsedisp('输入出...