教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

MATLAB全部实验及答案(3)

来源:网络收集 时间:2026-08-10
导读: 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)

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

s=s*n; if s>10^100 break end end

fprintf('%d!=%1.6e>1e100\\n',n,s)

实验五、MATLAB选择结构程序设计

实验内容及步骤

1、 输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分

~100分为A,80分~89分为B,70分~79为C,60分~69分为D,60分以下为E。

要求:1)分别用if语句和switch语句实现

2)对不合理的成绩应输出出错信息“输入的成绩不合理”(若成绩出现小数,则只能是“.5”) 解:score=input('请输入您的分数:'); if rem(score,0.5)==0 switch score

case num2cell(90:0.5:100) disp('您的成绩等级为 A') case num2cell(80:0.5:89) disp('您的成绩等级为 B') case num2cell(70:0.5:79)

disp('您的成绩等级为 C') case num2cell(60:0.5:69) disp('您的成绩等级为 D') case num2cell(0:0.5:59.5) disp('您的成绩等级为 E') otherwise

disp('你输入的成绩不合理') end else

disp('你输入的成绩不合理,若出现小数只能是0.5') end

2、 设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位

随机整数,再输入一个运算符号,做相应的运算,显示相应的结果,并要求结果显示类似于“a=x+y=34”。(sy312.m) 解:a=input('请输入一个数:'); b=input('请再输入一个数:');

fuhao=input('请输入一个运算符号(+ - * /):','s'); switch fuhao case {'+'} he=a+b; disp(['

=',num2str(a),'+',num2str(b),'=',num2str(he)]) case {'-'}

he=a-b; disp(['

=',num2str(a),'-',num2str(b),'=',num2str(he)]) case {'*'} he=a*b; disp(['

=',num2str(a),'*',num2str(b),'=',num2str(he)]) case {'/'} he=a/b; disp(['

=',num2str(a),'/',num2str(b),'=',num2str(he)]) otherwise disp('请输入正确的符号') end

3、 求下列分段函数的值

??2???6,??0且 ??-3?y???2?5??6,0??<10,??2且 ??3 ??2???1,其他? 要求:用if语句实现,分别输出x = -5.0,-3.0,1.0,2.0,2.5,

3.0,5.0时的y值。其中x的值以向量的形式从键盘输入。(sy313.m)

解:x=[]; y=[];

x=input('请输入x的值:'); for k=1:length(x)

MATLAB全部实验及答案(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/403872.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)