matlab练习题Word下载.docx

上传人:b****3 文档编号:17564549 上传时间:2022-12-07 格式:DOCX 页数:25 大小:93.30KB
下载 相关 举报
matlab练习题Word下载.docx_第1页
第1页 / 共25页
matlab练习题Word下载.docx_第2页
第2页 / 共25页
matlab练习题Word下载.docx_第3页
第3页 / 共25页
matlab练习题Word下载.docx_第4页
第4页 / 共25页
matlab练习题Word下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

matlab练习题Word下载.docx

《matlab练习题Word下载.docx》由会员分享,可在线阅读,更多相关《matlab练习题Word下载.docx(25页珍藏版)》请在冰豆网上搜索。

matlab练习题Word下载.docx

)=[]%删除第二行元素

a

(1)=[]%删除一个元素,则矩阵变为行向量

a=[]%删除所有元素为空矩阵

9.设

求A-2B。

方法1:

A=[4-31;

205];

B=[120;

-103];

A-2*B

方法2:

b=uminus(2*B)%,返回2*B的相反数A+b

10.求30。

、60。

和90。

的正弦、余弦、正切和余切函数值。

x=30:

30:

90;

sind(x),cosd(x),tand(x),cotd(x)

11.求0.1,0.2,0.3,0.4,0.5,0.6的反正弦、反余弦和反正切值。

x=0.1:

0.1:

0.6;

asin(x),acos(x),atan(x)%返回值为弧度

asind(x),acosd(x),atand(x)%返回值为角度

12.求1到10的自然对数和常用对数。

x=1:

10;

log(x)%返回值为自然对数

log10(x)%返回值为常用对数

13.建立任意的两个字符串,并查看字符串占用的字节信息。

s1='

NortheastForestUiversity'

%赋值方式建立字符串s1

s2='

HaerbinHeilongjiang‘%赋值方式建立字符串s2

whos%查看字符串占用的字节信息

14.使用赋值语句依次为各个域赋值的方法建立构架数组,存储两名学生的名字、学号、性别、班级信息。

s.name='

WangMing'

;

s.number='

19990101'

s.sex='

man'

s.class='

199901'

s

(2).name='

ZhangLe'

s

(2).number='

19990201'

s

(2).sex='

s

(2).class='

199902'

15.已知A=[4,-65,-54,0,6;

56,0,67,-45,0],分析下列语句的功能。

(1)find(A>

4);

(2)[ij]=find(A,1);

(3)[ij]=find(A,1,'

first'

);

(4)[ij]=find(A,1,'

last'

(1)找出大于4的元素的序号。

(2)找出一个不为零的元素的行号、列号。

(3)找出第一个不为零的元素的行号、列号。

(4)找出最后一个不为零的元素的行号、列号

16.建立任意的3×

3的矩阵,并求出能被3整除的元素。

A=[103;

29-1;

-3-90];

%生成3×

3的矩阵A

P=rem(A,3)==0%判断A的元素是否可以被3整除

A(P)%求出被3整除的元素

17.已知

(1) 

 

n为任意给定的整数,求y的值。

(2) 

y≥1.5时,求n的值

%

(1)

y=0;

i=1;

n=input('

n=?

'

);

whilei<

=n

f=1/i/i;

y=y+f;

i=i+1;

end

y

%

(2)

while1

ify>

=1.5

break;

end

i=i+1;

i,y

18.设

,求:

a=0;

b=2*pi;

n=1000;

h=(b-a)/n;

x=a:

h:

b;

f=cos(x-pi/6).*sin(x+pi/6);

fori=1:

n

s(i)=(f(i)+f(i+1))*h/2;

y=y+s(i);

19.求[100,200]之间第一个能被13整除的整数。

forn=100:

200

ifrem(n,13)~=0

continue

break

20.使用for循环语句逐一显示构架数组的域值。

forii=1:

length(s)

disp(s(ii).name)

disp(s(ii).number)

disp(s(ii).class)

disp(s(ii).sex)

21.输出全部三位的水仙花数。

form=100:

999

m1=fix(m/100);

%求m的百位数字

m2=rem(fix(m/10),10);

%求m的十位数字

m3=rem(m,10);

%求m的个位数字

ifm==m1*m1*m1+m2*m2*m2+m3*m3*m3

disp(m)

22.编程求出Fibonacci数列中第一个大于10000的元素及序号。

%1

a

(1)=1;

a

(2)=1;

i=2;

whilea(i)<

=10000

a(i+1)=a(i-1)+a(i);

i,a(i)

%2

n=100;

a=ones(1,n);

fori=3:

a(i)=a(i-1)+a(i-2);

ifa(i)>

a(i),

end;

i

23.求某正整数范围内的全部素数。

1

m=input('

m='

p=1:

m;

p

(1)=0;

fori=2:

sqrt(m)

forj=2*i:

i:

m

p(j)=0;

n=find(p~=0);

p(n)

p=2:

n=find(rem(p,i)==0&

p~=i);

p(n)=[];

p

24.求1-100的平方、平方根和立方根

%方法1:

square=zeros(1,100);

square_root=zeros(1,100);

cube_root=zeros(1,100);

100

square(ii)=ii^2;

square_root(ii)=ii^(1/2);

cube_root(ii)=ii^(1/3);

%方法2:

ii=1:

100;

square(ii)=ii.^2;

square_root(ii)=ii.^(1/2);

cube_root(ii)=ii.^(1/3);

25.编程求3阶魔方矩阵大于5的元素的平方根。

a=magic(3);

size(a,1)

forjj=1:

size(a,2)

ifa(ii,jj)>

5

a(ii,jj)=sqrt(a(ii,jj));

a

b=a>

5;

%b是逻辑数组

a(b)=sqrt(a(b))

%如果要求同时对小于等于5的元素求平方呢?

修改的程序如下:

else

a(ii,jj)=a(ii,jj)^2;

a(b)=sqrt(a(b));

a(~b)=a(~b).^2;

26.求n!

n=1,2,…,10。

%定义函数文件factor:

functionf=factor(n)

ifn<

=1

f=1;

else

f=factor(n-1)*n;

return;

%返回

%编写下述的命令文件中调用函数文件factor.m:

%fori=1:

10

%fac(i)=factor(i);

%end

%fac

27.求函数f(x)=sin(x)+3在区间[25]的极小值。

f=inline('

sin(x)+3'

x=fminbnd(f,2,5);

x=fminbnd('

2,5);

sin(x)+3%f(x)在区间[25]的极小值

28.建立一数据文件,用于存放若干名学生的姓名和成绩。

Pleaseinputthenumberofstudent?

fid=fopen('

ss.txt'

'

w'

n=input('

name=?

s'

s=input('

score=?

fprintf(fid,'

%8s%6.1f\n'

n,s);

fclose(fid);

29.已知x=[-43,72,9,16,23,47],求向量x的最大值和最小值。

x=[-43,72,9,16,23,47]

y=max(x)%求向量x中的最大值

[y,l]=max(x)%求向量x中的最大值及其该元素的位置

z=min(x)%求向量x中的最小值

[z,m]=min(x)%求向量x中的最小值及其该元素的位置

30.分别求三阶魔方矩阵中各列和各行元素中的最大值,并求整个矩阵的最大值和最小值。

x=magic(3)

max(x)%矩阵x中各列元素中的最大值

max(x,[],2)%矩阵x中各行元素中的最大值

min(x)%矩阵x中各列元素中的最小值

min(x,[],2)%矩阵x中各行元素中的最小值

max(max(x))%整个矩阵的最大值

min(min(x))%整个矩阵的最小值

31.分析下列程序的功能。

x=[456;

148];

y=[175;

457];

p=max(x,y);

P

取两个2×

3的二维数组x和y同一位置上的元素值大者构成一个新矩阵p。

32.已知x=[1842;

9625;

3671],从不同维方向求出其平均值和中值。

x=[1842;

3671];

median(x)

median(x,1)%按列方向,求数组的中值

median(x,2)%按行方向,求数组的中值

mean(x)

mean(x,1)%按列方向,求数组的平均值

mean(x,2)%按行方向,求数组的平均值

33.已知x=[456;

148],分析矩阵x的每行、每列元素的乘积和全部元素的乘积。

sum(x)

sum(x,1)%求数组各列元素的和

sum(x,2)%求数组各行元素的和

sum(sum(x))%求数组所有元素的和

prod(x)

prod(x,1)%求数组各列元素的乘积

prod(x,2)%求数组各行元素的乘积

prod(prod(x))%求数组所有元素的乘积

34.已知a=[123;

396;

4108;

407],从不同维方向求出其标准方差。

a=[123;

407];

std(a)

std(a,0,1)%按公式1按列方向求矩阵a的标准方差

std(a,1,1)%按公式2按列方向求矩阵a的标准方差

std(a,0,2)%按公式1按行方向求矩阵a的标准方差

std(a,1,2)%按公式2按列方向求矩阵a的标准方差

35.已知a=[123;

407],对矩阵排序。

sort(a,1)

sort(a,1,'

ascend'

)%对矩阵a的各列进行升序排列

sort(a,2)%对矩阵a的各行进行排列

sort(a,2,'

)%对矩阵a的各行进行升序排列

descend'

)%对矩阵a的各列进行降序排列

)%对矩阵a的各行进行降序排列

36.分析下列语句的功能。

9101112;

13141516];

(1)flipud(a);

(2)fliplr(a);

(3)a=[1;

2;

6;

7;

8];

flipud(a)(4)a=[12678];

flipud(a)。

(1)上下方向翻转矩阵。

(2)水平方向翻转矩阵。

(3)列向量的上下方向翻转。

(4)行向量的上下方向翻转。

37.求矩阵a=[-211;

020;

-413]的特征值和特征向量

a=[-211;

-413];

[X,D]=eig(a)

38.求多项式

的根。

A=[1,8,0,0,-10];

x=roots(A)

39.求正弦、余弦函数在区间[01]内间隔为0.25的各点的值。

x=0:

1;

y1=sin(x);

y2=cos(x);

xi=0:

.25:

yi1=interp1(x,y1,xi),yi2=interp1(x,y2,xi)%线性插值方法

yi1=interp1(x,y1,xi,'

nearest'

),yi2=interp1(x,y2,xi,'

)%最邻近插值

40.已知

在[1,3]区间10个采样点的函数值,求

的4次拟合多项式p(x)。

x=linspace(1,3,10);

y=exp(x);

p=polyfit(x,y,4)

41.求

(1)建立被积函数文件fesin.m

functionf=fesin(x)

f=exp(-0.5*x).*sin(x+pi/6);

(2)调用数值积分函数quad求定积分

[S,n]=quad('

fesin'

0,3*pi)

42.求

(1)被积函数文件fx.m。

functionf=fx(x)

f=x.*sin(x)./(1+cos(x).*cos(x));

(2)调用函数quad8求定积分。

I=quad8('

fx'

0,pi)

43.在区间

内,绘制曲线

x=0:

pi/100:

2*pi;

y1=2*sin(2*x);

y2=3*sin(3*x);

plot(x,y1,x,y2)%在同一个坐标系分别绘制二维图形

title('

Thisisfigureofthethirdexample.'

%给图形加上标题

xlabel('

x'

%给x轴加标注

ylabel('

y'

legend('

2*sin(2*x)'

'

3*sin(3*x)'

);

%在当前图形上输出图例

44.绘制函数y=sinxcos2x的图形。

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

y=sin(x).*cos(2*x);

plot(x,y,'

r--'

)%红色虚线

y=sin(x)*cos(2*x)'

ylabel('

y=sinxcos2x'

grid

text(5.5,0,'

y=sinxcos2x'

)%在点(5.5,0)处放置文本y=sinxcos2x

45.绘制正弦、余弦、双曲正弦和双曲余弦三角函数的图形。

subplot(2,2,1);

ezplot('

sin(x)'

subplot(2,2,2);

cos(x)'

subplot(2,2,3);

sinh(x)'

sinh(x)'

subplot(2,2,4);

cosh(x)'

46.绘制向量(268785)的直方图

x=[123456];

y=[268785];

bar(x,y,0.5);

ExampleofaBarPlot'

axis([07010]);

47.绘制向量(1037566)的饼图。

data=[1037566];

explode=[01000];

pie(data,explode);

ExampleofaPiePlot'

One'

Two'

Three'

Four'

Five'

48.绘制向量(268785)的离散杆状图。

stem(x,y,'

filled'

ExampleofaStemPlot'

49.绘制三维网面

的图形。

x=-1:

0.05:

y=x;

[x,y]=meshgrid(x,y);

z=x.^2+2*y.^2;

surf(x,y,z)

symsxy;

f=x^2+y^2;

ezsurf(f)%-2≤x≤2,-2≤y≤2

%方法3:

ezsurf('

x^2+y^2'

[-1,1,-1,1])%-1≤x≤1,-1≤y≤1

50.绘制z=sinxcosx的三维网格曲面图。

0.15:

y=0:

z=sin(y'

)*cos(x);

mesh(x,y,z);

x-axis'

),ylabel('

y-axis'

),zlabel('

z-label'

3-Dmesh'

51.求下列极限。

极限1:

symsamx;

f=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/(x+a);

limit(f,x,a)

ans=

(1/2*a*exp(sin(a))+1/2*a-exp(tan(a))+1)/a

极限2:

symsxt;

limit((1+2*t/x)^(3*x),x,inf)

exp(6*t)

极限3:

symsx;

f=x*(sqrt(x^2+1)-x);

limit(f,x,inf,'

left'

1/2

极限4:

f=(sqrt(x)-sqrt

(2)-sqrt(x-2))/sqrt(x*x-4);

limit(f,x,2,'

right'

-1/2

52.生成满足正态分布的10000×

5随机矩阵,然后求各列元素的均值和标准方差,再求这5列随机数据的相关系数矩阵。

X=randn(10000,5);

M=mean(X)

D=std(X)

R=corrcoef(X)

53.某观测站测得某日6:

00时至18:

00时之间每隔2小时的室内外温度(℃),用3次样条插值分别求得该日室内外6:

30至17:

30时之间每隔2小时各点的近似温度(℃)。

设时间变量h为一行向量,温度变量t为一个两列矩阵,其中第一列存放室内温度,第二列储存室外温度。

命令如下:

h=6:

18;

t=[18,20,22,25,30,28,24;

15,19,24,28,34,32,30]'

XI=6.5:

17.5

YI=interp1(h,t,XI,'

spline'

)%用3次样条插值计算

54.某实验对一根长10米的钢轨进行热源的温度传播测试。

用x表示测量点0:

2.5:

10(米),用h表示测量时间0:

60(秒),用T表示测试所得各点的温度(℃)。

试用线性插值求出在一分钟内每隔20秒、钢轨每隔1米处的温度TI。

h=[0:

60]'

T=[95,14,0,0,0;

88,48,32,12,6;

67,64,54,48,41];

xi=[0:

10];

hi=[0:

20:

TI=interp2(x,h,T,xi,hi)

55.函数x(t)=12sin(2π×

10t+π/4)+5cos(2π×

40t),取N=128,试对t从0~1秒采样,用fft作快速傅立叶变换,绘制相应的振幅-频率图。

N=128;

%采样点数

T=1;

%采样时间终点

t=linspace(0,T,N);

%给出N个采样时间ti(I=1:

N)

x=12*sin(2*pi*10*t+pi/4)+5*cos(2*pi*40*t);

%求各采样点样本值x

dt=t

(2)-t

(1);

%采样周期

f=1/dt;

%采样频率(Hz)

X=fft(x);

%计算x的快速傅立叶变换X

F=X(1:

N/2+1);

%F(k)=X(k)(k=1:

N/2+1)

f=f*(0:

N/2)/N;

%使频率轴f从零开始

plot(f,abs(F),'

-*'

)%绘制振幅-频率图

Frequency'

|F(k)|'

56.分别用Jacobi迭代和Gauss-Serdel迭代法求

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

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1