1. 判断某一年是否是闰年。年从键盘输入。
n=input('n=') if rem(n,400)==0 y='a leap year'; elseif rem(n,100)==0 y='not a leap year'; elseif rem(n,4)==0 y='a leap year';
else y='not a leap year';
end y
(如果此题改成:检查从1到5000年间的闰年,并把闰年用一向量表示。 a=[]; for n=1:5000 if rem(n,400)==0 a=[a,n]; elseif rem(n,100)==0 elseif rem(n,4)==0 a=[a,n]; end end a'
如果改成:编程,判断某一年是否是闰年: function y=leap(n)
if rem(n,4)==0&rem(n,100)~=0|rem(n,400)==0 'leap year'
else 'not a leap year' end
3. 用循环语句来寻找第一个大于10000的Fibonacci数:
a(m)=a(m-1)+a(m-2), a(1)=a(2)=1 n=100; a=ones(1,n); for k=3:n
a(k)=a(k-1)+a(k-2);
if a(k)>=10000 break; end, end
k, a(k), 或者: a=ones(1,100); m=2;
while a(m)<10000 a(m+1)=a(m-1)+a(m); m=m+1;
end m, a(m),
3.编写一程序,求魔方矩阵magic(20)左上-右下对角线、左下-右上对角线的元素,并分别以一行向量表示。 a=magic(20); r=[]; s=[]; for m=1:20 for n=1:20 if m==n
s=[s a(m,n)]; elseif m+n==21 r=[r a(m,n)]; end end end r,s
4. 存在如下递推关系,编程计算精确到前100项的值,x由键盘输入。
x=input('x=') y=0; p=1; for n=1:100 p=p*(-x)/n; y=y+p; end
1ny??(?x)nn!y