MATLAB全部实验及答案

2026/4/27 16:50:16

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

fn=fn-1-2fn-2+fn-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

法二:clear all,clc

for n=1:50 if n==1 f(1)=1; elseif n==2 f(2)=0; elseif n==3 f(3)=1; elseif n>3

f(n)=f(n-1)-2*f(n-2)+f(n-3); end end

[MAX,y]=max(f) [Min,x]=min(f) positive=length(find(f>0))

zero=length(find(f==0))

negative= length(find(f<0)) 3、 Fibonacci数组的元素满足Fibonacci规则:

ak+2=ak+ak+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))]) 法二:clear,clc s=1; for n=1:inf


MATLAB全部实验及答案.doc 将本文的Word文档下载到电脑
搜索更多关于: MATLAB全部实验及答案 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219