matlab实习作业 2Word文档格式.docx

上传人:b****1 文档编号:1230187 上传时间:2023-04-30 格式:DOCX 页数:13 大小:82.52KB
下载 相关 举报
matlab实习作业 2Word文档格式.docx_第1页
第1页 / 共13页
matlab实习作业 2Word文档格式.docx_第2页
第2页 / 共13页
matlab实习作业 2Word文档格式.docx_第3页
第3页 / 共13页
matlab实习作业 2Word文档格式.docx_第4页
第4页 / 共13页
matlab实习作业 2Word文档格式.docx_第5页
第5页 / 共13页
matlab实习作业 2Word文档格式.docx_第6页
第6页 / 共13页
matlab实习作业 2Word文档格式.docx_第7页
第7页 / 共13页
matlab实习作业 2Word文档格式.docx_第8页
第8页 / 共13页
matlab实习作业 2Word文档格式.docx_第9页
第9页 / 共13页
matlab实习作业 2Word文档格式.docx_第10页
第10页 / 共13页
matlab实习作业 2Word文档格式.docx_第11页
第11页 / 共13页
matlab实习作业 2Word文档格式.docx_第12页
第12页 / 共13页
matlab实习作业 2Word文档格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

matlab实习作业 2Word文档格式.docx

《matlab实习作业 2Word文档格式.docx》由会员分享,可在线阅读,更多相关《matlab实习作业 2Word文档格式.docx(13页珍藏版)》请在冰点文库上搜索。

matlab实习作业 2Word文档格式.docx

输入10个数,求其中最大数和最小数。

要求分别用循环结构和调用MATLAB的max函数、min函数来实现。

解:

(1)循环结构方式

M文件:

indata=input('

Pleaseinputthenumber10'

);

maxdata=indata

(1);

mindata=indata

(1);

for(i=1:

10)

if(indata(i)>

maxdata)

maxdata=indata(i);

end

if(indata(i)<

mindata)

mindata=indata(i);

end

maxdata

mindata

运行结果:

(2)调用函数方式

Pleaseinputthenumber20'

maxdata=max(indata)

mindata=min(indata)

习题二:

求Fibonacci数列

(1)大于4000的最小项。

(2)5000之内的项数

(1)M文件:

f=[1,1];

i=1;

whilef(i)+f(i+1)<

4000

f(i+2)=f(i)+f(i+1);

i=i+1;

mindata=min(f)

(2)M文件:

5000

data=f

习题三:

写出下列程序的输出结果:

s=0;

a=[12,13,14;

15,16,17;

18,19,20;

21,22,23];

fork=a

forj=1:

4

ifrem(k(j),2)~=0

s=s+k(j);

s

运行结果

习题四:

解方程组Ax=b,分别用求逆解法与直接解法求其解。

(1)直接解法

A=[2,-1,0,0,0;

-1,2,-1,0,0;

0,-1,2,-1,0;

0,0,-1,2,-1;

0,0,0,-1,2]

b=[1;

0;

0]

X=A\b

(2)逆解法

X=inv(A)*b

习题五:

编一个m程序,求N阶方阵A的行列式的值。

M文件

det(rand(input('

Randominputmatrixorder'

)))

习题六:

今有多项式P1(x)=x4-2x+1,P2(x)=x2+4x-0.5,要求先求得P(x)=P1(x)+P2(x),然后计算xi=0.2*i各点上的P(xi)(i=0,1,2,…,5)值。

P1=[1,0,0,-2,1];

%P1(x)多项式的系数

P2=[0,0,1,4,-0.5];

%P2(x)多项式的系数

P=P1+P2%P1(x)+P2(x)多项式的系数

i=0:

5;

Xi=i*0.2%Xi

y=polyval(P,Xi)%输出

习题七:

试编一个m程序,将一维数组x中的N个数按颠倒的次序重新存储。

如N=5,原来x为:

x=[13579]

而经过颠倒处理后x中数据的次序应该为:

x=[97531]

num=input('

numis'

indatais'

ifmod(num,2)

display('

Theinputisodd'

fori=1:

1:

(num-1)/2

temp=indata(i);

indata(i)=indata(num+1-i);

indata(num+1-i)=temp;

else

Theinputiseven'

(num/2)

Reversetheorderaftertheresultsis'

display(indata);

当输入的数为偶数时:

当输入的数为奇数时:

习题八:

在[02π]范围内绘制二维曲线图y=sin(x)*cos(5x)。

M文件:

x=linspace(0,2*pi,60);

y=sin(x).*cos(5*x)

plot(x,y,'

b'

'

linewidth'

3);

axis([02*pi-1.51.5]);

title('

sin(x)cos(5x)'

xlabel('

x'

ylabel('

y'

在[02π]范围内绘制以Y轴为对数的二维曲线图。

y=|1000sin(4x)|+1

x=[0:

0.01:

2*pi]

y=abs(1000*sin(4*x))+1

semilogy(x,y)

习题九把自己姓名中的各个拼音字母(小写)所对应的ASCII值转换为二进制序列,并用二进制脉冲绘图表示出来

name='

DONGYUANWEI'

ASCII=double(name)

c=dec2bin(b,8)%Convertdecimalintegertoabinarystring

c=c'

;

%?

?

stem(str2num(c(:

)))%Convertstringmatrixtonumericarray

心得体会

通过这两节课堂我深刻了理解了matlab的作用,首先我想说的是,matlab跟其他语言不一样,如果你抱着“把其他语言的思想运用在matlab里面”的话,那么即使程序运行不出错,也很难把握matlab的精髓,也就很难发挥matlab的作用了。

所以,要做好这门实训就要好好的努力去学习相关知识。

Matlab是一个基于矩阵运算的软件,这恐怕是众所周知的事情了,但是,真正在运用的时候,许多人往往没有注意到这个问题,因此,for循环满天飞„„„„..这不仅是暴殄天物,还浪费了你宝贵的时间。

对此,版友MVH在他的“MATLAB 

小技巧”一文中也有所涉及,雷同的东西我也就不重复了,matlab的“帮助”里面也有相关的指示。

经过此次实训我收获了很多知识点让我受益匪浅,也让我懂得了自己的不足以后我会更加努力去学习。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2