实验三(2)MATLAB程序设计并且附有答案
- 格式:doc
- 大小:32.50 KB
- 文档页数:4
实验三(2)、MA TLAB程序设计
一、实验目的
1、掌握建立和执行M文件的方法
2、掌握利用for语句和while语句实现选择结构的方法
二、实验内容及步骤
1、分别使用for循环语句和while循环语句找出最小的n值,
使得n!>10100,并求出n!。要求显示的结果为
n=70
n!=1.197857e+100>1e100
或
70!=1.197857e+100>1e100
用IF语句执行如下:
s=1;
for n=1:100
s=s*n;
if(s>10^100)
break;
end
end
str1=['n=',num2str(n)];
str2=['n!=',num2str(s)];
disp(str1)
disp(str2)
用WHILE语句执行如下:
n=1;
s=1;
while(s<=10^100)
s=s*n;
n=n+1;
end
str1=['n=',num2str(n-1)];
str2=['n!=',num2str(s)];
disp(str1)
disp(str2)
2、已知f1=1,n=1
f2=0,n=2
f3=1,n=3
f n=f n-1-2f n-2+f n-3,n>3
求f1 ~ f50中:
1)最大值和最小值及它们的位置,各数之和(最大值给变量MAX,其位置给变量x,最小值给变量MIN,其位置给变量y,各数之和给变量SUM)。
2)正数、零、负数的个数(依次赋值给变量positive,zero,
negative)。
clear;
f(1)=1;
f(2)=0;
f(3)=1;
for n=4:50
f(n)=f(n-1)-2*f(n-2)+f(n-3);
end
[MAX,x]=max(f) %注意不要分号,要执行的语句
[MIN,y]=min(f)
SUM=sum(f)
positive=length(find(f>0))
zero=length(find(f==0))
negative=length(find(f<0))
MAX =
406631
x =
49
MIN =
-403795
y =
50
SUM =
76861
positive =
25
zero =
2
negative =
23
3、Fibonacci数组的元素满足Fibonacci规则:
a k+2=a k+a k+1,(k=1,2,3,…);且a1= a2=1。
请设计一段程序,求出该数组中第一个大于10000的元素
要求显示的结果为:
i=21
a(i)=10946
或者
a(21)=10946
a(1)=1;
a(2)=1;
for k=1:10000 %不能是3:10000
a(k+2)=a(k)+a(k+1);
if a(k)>10000
break;
end
end
disp(['k=',num2str(k)])
disp(['a(k)=',num2str(a(k))])