发布企业信息

Matlab 控制流

作者:未知  信息来源:未知  2006-1-26

字体大小:  网友评论  进入论坛  

3 MATLAB控制流8。Rank=cell(1,5)。S=struct(‘Name‘,Name,‘Marks‘,Mark,‘Rank‘,Rank)。% 根据学生的分数,求出相应的等级。...


8.3 MATLAB控制流
8.3.1 for循环结构

【 * 例 8.3.1 -1 】一个简单的 for 循环示例。
for i=1:10; %i 依次取 1,2, … 10,.
x(i)=i; % 对每个 i 值,重复执行由该指令构成的循环体,
end;

x % 要求显示运行后数组 x 的值。
x =
1 2 3 4 5 6 7 8 9 10

8.3.2 while循环结构

【 * 例 8.3.2 -1 】 Fibonacci 数组的元素满足 Fibonacci 规则: ;且 。现要求该数组中第一个大于 10000 的元素。
a(1)=1;a(2)=1;i=2;
while a(i)<=10000
a(i+1)=a(i-1)+a(i); % 当现有的元素仍小于 10000 时,求解下一个元素。
i=i+1;
end;
i,a(i),
i =
21
ans =
10946


8.3.3 if-else-end分支结构

【 * 例 8.3.3 -1 】一个简单的分支结构。
cost=10;number=12;
if number>8
sums=number*0.95*cost;
end,sums
sums =
114.0000

【 * 例 8.3.3 -2 】用 for 循环指令来寻求 Fibonacc 数组中第一个大于 10000 的元素。
n=100;a=ones(1,n);
for i=3:n
a(i)=a(i-1)+a(i-2);
if a(i)>=10000
a(i),
break; % 跳出所在的一级循环。
end;
end,i
ans =
10946
i =
21


8.3.4 switch-case结构

【 * 例 8.3.4 -1 】学生的成绩管理,用来演示 switch 结构的应用。
clear;
% 划分区域: 满分 (100) , 优秀 (90-99) , 良好 (80-89) , 及格 (60-79) , 不及格 (<60) 。
for i=1:10;a{i}=89+i;b{i}=79+i;c{i}=69+i;d{i}=59+i;end;c=[d,c];
Name={' Jack','Marry','Peter',' Rose',' Tom'}; % 元胞数组
Mark={72,83,56,94,100};Rank=cell(1,5);
% 创建一个含 5 个元素的构架数组 S ,它有三个域。
S=struct('Name',Name,'Marks',Mark,'Rank',Rank);
% 根据学生的分数,求出相应的等级。
for i=1:5
switch S(i).Marks
case 100 % 得分为 100 时
S(i).Rank=' 满分 '; % 列为 ' 满分 ' 等级
case a % 得分在 90 和 99 之间
S(i).Rank=' 优秀 '; % 列为 ' 优秀 ' 等级
case b % 得分在 80 和 89 之间
S(i).Rank=' 良好 '; % 列为 ' 良好 ' 等级
case c % 得分在 60 和 79 之间
S(i).Rank=' 及格 '; % 列为 ' 及格 ' 等级
otherwise % 得分低于 60 。
S(i).Rank=' 不及格 '; % 列为 ' 不及格 ' 等级
end
end

% 将学生姓名,得分,登记等信息打印出来。
disp([' 学生姓名 ',' 得分 ',' 等级 ']);disp(' ')
for i=1:5;
disp([S(i).Name,blanks(6),num2str(S(i).Marks),blanks(6),S(i).Rank]);
end;
学生姓名 得分 等级
Jack 72 及格
Marry 83 良好
Peter 56 不及格
Rose 94 优秀
Tom 100 满分


8.3.5 try-catch结构

【 * 例 8.3.5 -1 】 try-catch 结构应用实例。
clear,N=4;A=magic(3); % 设置 3 行 3 列矩阵 A 。
try
A_N=A(N,:), % 取 A 的第 N 行元素
catch
A_end=A(end,:), % 如果取 A(N,:) 出错,则改取 A 的最后一行。
end

lasterr % 显示出错原因
A_end =
4 9 2
ans =
Index exceeds matrix dimensions.

分页:
Google


推荐图文

广告

机械热点图文

  • 数控车床加工编程典型实例分析2
  • 内螺纹车削加工——数控车床编程实例42
  • 子程序编程方法-数控车床编程实例36
  • 塑料模具动画演示

机械风云人物

Copyright © 2004 51base.com Inc. All rights reserved.

无忧基地 版权所有│粤ICP备06098418号│XHTML | CSS

客服:+86-755-2212 2202 工作时间:周1~5 10点~16点

感谢中国网络提供带宽支持

《网络营销技巧》