ma=A(i);
end
end
disp(ma)
disp(mi)
max、min函数:
fora=1:
20
A(a)=input('请输入20个数:
');
end
A
mi=min(A),ma=max(A)
5.已知
s=1+2+22+23+…+263
分别用循环结构和调用MATLAB的sum函数求s的值。
循环结构:
s=0;
forx=0:
63
s=2^x+s;
end
disp(s)
sum函数:
i=0:
63;
f=2.^i;
sum(f)
6.当n分别取100、1000、10000时,求下列各式的值:
(1)
(2)
(3)
(4)
要求分别用循环结构和向量运算(使用sum或prod函数)来实现。
(1):
循环结构:
n=input('请输入n的值:
');
s=0;
fora=1:
n
s=s+(-1)^(a+1)/a;
end
s
向量运算:
n=input('请输入n的值:
');
a=1:
n;
f=(-1).^(a+1)./a;
s=sum(f)
(2):
循环结构:
n=input('请输入n的值:
');
s=0;
fora=1:
n;
s=s+(-1)^(a+1)/(2*a-1);
end
s
向量运算:
n=input('请输入n的值:
');
a=1:
n;
f=(-1).^(a+1)./(2*a-1);
s=sum(f)
(3):
循环结构:
n=input('请输入n的值:
');
s=0;
fora=1:
n
s=s+(1/4)^a;
end
s
向量运算:
n=input('请输入n的值:
');
a=1:
n;
f=(1/4).^a;
s=sum(f)
(4):
循环结构:
n=input('请输入n的值:
');
s=1;
fora=1:
n
f=(2*a)^2/((2*a-1)*(2*a+1));
s=s*f;
end
s
向量运算:
n=input('请输入n的值:
');
a=1:
n;
f=(2*a).^2./((2*a-1).*(2*a+1));
s=prod(f)
7.编写一个函数文件,求小于任意自然数n的斐波那契(Fibnacci)数列各项。
斐波那契数列定义如下:
functionf=Fibnacci(n)
fori=1:
n
ifi==1
f=1;
elseifi==2
f=1;
else
f=Fibnacci(i-1)+Fibnacci(i-2);
end
end
n=input('n=');
f=Fibnacci(n)
8.编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在脚本文件中调用该函数。
function[C,D]=CJ(A,B)
C=A*B;
D=A.*B;
A=[123;456;789];
B=[111;111;111];
[C,D]=CJ(A,B)
9.先用函数的递归调用定义一个函数文件求
,然后调用该函数文件求
。
functionf=xt4_10(m,n)
ifn<1
f=0;
else
f=n^m+xt4_10(m,n-1);
end
xt4_10(1,100)+xt4_10(2,50)+xt4_10(-1,10)
10.写出下列程序的输出结果。
脚本文件exe.m:
globalx
x=1:
2:
5;
y=2:
2:
6;
sub(y);
x
y
函数文件sub.m:
functionfun=sub(z)
globalx
z=3*x;
x=x+z;