资源描述:
《电科132王健的matlab课程报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、序号:学号:13461220课程报告课程报告名称:Matlab应用软件学生姓名:王健专业班级:电科132学院(系):信息科学与工程学院数理学院校内指导教师:姜忠义专业技术职务:讲师2015年8月1日——2015年12月28日18目录目录21.第一部分32.第二部分43.第三部分64.第四部分75.第五部分76.第六部分87.第七部分98.第八部分109.第九部分1110.心得体会1518第一部分用matlab画彗星运动t=(1/2:2/5:9/2)*pi;%t函数x=cos(t);x=[x(1:2:end-1)x(1)];%
2、t的横坐标函数y=sin(t);y=[y(1:2:end-1)y(1)];%t的纵坐标函数plot(x,y,'r');%用红色线显示图像axisequal;%坐标轴的长度单位设成相等axisoff%清除坐标刻度N=10;T=N*pi*(0:0.0005:1);%T函数X=sin(T);Y=cos(T);%编译X、Y关于T的函数plot(X,Y,'g');%用蓝色线在原图象上显示动态图像holdon;%使当前轴及图形保持而不被刷新,再次基础上再画图comet(X,Y,0.02);%质点运动轨迹动画的绘制holdoff%使当前轴
3、及图形不在具备被刷新的性质,关闭在此基础上的再画图运行结果:181.第二部分图形处理a=[-3:0.2:3];%定义横坐标b=1/sqrt(2*pi)*exp(-1/2*a.^2);%定义纵坐标subplot(2,2,1),plot(a,b,'r--*')%用点画线符号*显示在二行二列的第一行第一列的坐标图上subplot(2,2,2),plot(a,b,'r*')%用细实线符号*显示在二行二列的第一行第二列的坐标图上X=-1:0.1:1;Y=X';X1=X.^2;Y1=Y.^2;x=ones(3,1);18x=ones(l
4、ength(X),1);%生成X长度行1列且所有元素均为1的矩阵y=ones(1,length(Y));%生成1行Y长度列且所有元素均为1的矩阵X1=x*X1;Y1=Y1*y;Z=X1+Y1;subplot(2,2,3),mesh(X,Y,Z);%显示网格线在二行二列的第二行第一列的坐标图上subplot(2,2,4),surf(X,Y,Z);%显示网格线在二行二列的第二行第二列的坐标图上运行结果:181.第三部分Matlab函数指令symsxa%定义符号函数f1='sin(x^2)'f2='3*a^2+5*a+3'a1=2
5、;a2='100'diff(f1,x)%对f1函数关于x一次求导isstr(a1)%判断a1是不是字符串类型的subs(f1,'x','b')%将f1函数中的x用b赋值int(f2,a)%将f2关于a的积分double(a1)%将a1转为双精度浮点类型运行结果:181.第四部分判定一个数是不是素数functiona=b13461220(b)%定义一个功能函数判定一个数是不是素数fori=2:(b-1)a=mod(b,i);ifa==0a='不是素数';break;else%continue;a='是素数';endendend
6、运行结果:181.第五部分将行列式化成最简行列functionx=b13461220(x)%定义一个功能函数将行列式化成最简行列式[ab]=size(x);fork=1:b-1fori=a:-1:k+1forj=b:-1:kx(i,j)=x(i,j)-x(k,j)*(x(i,k)/x(k,k));endendendend运行结果:181.第六部分二分法计算函数functionc=b13461222(f,a,b)%二分法计算函数while(b-a)>1e-7c=(a+b)/2;if(f(c)*f(b))>0b=c;elseif
7、(f(c)*f(b))<0a=c;elsec;break;endendend运行结果:181.第七部分非不拉列函数functiony=b13461220(n)%定义一个非不拉列函数ifn==1
8、
9、n==2y=1;elsey=b13461220(n-1)+b13461220(n-2);end运行结果:2.第八部分文件的输写a=0:1:10;18f=[a;3*a+2];fid=fopen('b.txt','w');%将指定文件写入b.txtfprintf(fid,'%d%d',f);%将f值输出到指定文件[c,count]=
10、fscanf(fid,'%d%d',[5inf]);%[c,count]读取[5inf]的数值fprintf(1,'%d%d',c);%将c值输出fseek(fid,0,'eof');%定文件第零个元素位置d=ftell(fid);%得到文件数据fprintf(1,'FileSize=