MATLAB选择结构之if语句

目录

1、if 语句 

(1) 单分支 if 语句

(2)双分支 if 语句

(3)多分支if 语句


选择结构又称为分支结构,他根据给定的条件是否成立,来决定程序的运行路线,在不同的条件下,执行不同的操作。

MATLAB用于实现选择结构的语句有 if语句switch语句 try语句

 注:在我们日常的选择结构使用中,主要是使用if 语句,它的灵活性好、适用范围广。

1、if 语句 

(1) 单分支 if 语句

语句格式如下:

if 条件

    语句组

end

注1:条件一般用关系运算或逻辑运算来表示,其结果是一个标量或矩阵。当结果矩阵非空不包含零元素时,该条件成立,否则不成立。MATLAB建议条件尽量使用标量,条件的结果非零时,表示条件成立,零表示条件不成立。

注2:当条件成立时,执行语句组,执行完后继续执行 if 语句后面的语句,若条件不成立,则直接执行 if 语句后面的语句。

例,当x是整数矩阵时,输出x的值。

程序如下:

if fix(x)==x
disp(x);
end

 运行如下:

>> x=[1,2,3,4];
>> Untitled100
     1     2     3     4

>> x=[1,1.5,3,4];
>> Untitled100

(2)双分支 if 语句

语句格式如下:

if 条件

   语句组1

else

   语句组2

end

 注:当条件成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句后面的语句。

例,计算分段函数的值。

y= \begin{cases} \cos(x+1)+\sqrt{x^2+1} & x=10 \\ x\sqrt{x+\sqrt{x}} &x\neq 10 \end{cases}

 程序如下:

x=input('请输入x的值:');
if x==10
    y=cos(x+1)+sqrt(x*x+1);
else
    y=x*sqrt(x+sqrt(x));
end
y

 运行如下:

>> Untitled667
请输入x的值:10

y =

   10.0543

>> Untitled667
请输入x的值:5

y =

   13.4500

(3)多分支if 语句

语句格式如下:

if 条件1

   语句组1

elseif 条件2

   语句组2

\cdots

elseif 条件m

    语句组m

else 

    语句组n

end

 例,输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符,则输出其对应数的平方,若为其他字符则原样输出。

程序如下:

c=input('请输入一个字符:','s');
if c>='A' && c<='Z'
    disp(lower(c));
elseif c>='a' && c<='z'
    disp(upper(c));
elseif c>='0' && c<='9'
    disp(str2double(c)^2);
else
    disp(c);
end

运行如下:

>> Untitled3
请输入一个字符:R
r
>> Untitled3
请输入一个字符:r
R
>> Untitled3
请输入一个字符:5
    25
>> Untitled3
请输入一个字符:*
*

posted @   morphism  阅读(1544)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示