我是靠谱客的博主 个性大雁,最近开发中收集的这篇文章主要介绍matlab中的if语句,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)

有条件性地执行语句

语法

if expression
    statements
end

描述

MATLAB计算表达式,如果产生一个逻辑真或者非零结果,然后就执行一条或者多条MATLAB命令语句。

当有嵌套if时,每一个if必须和一个相应的end匹配。

当你在if语句里面嵌套使用else if或者else时,一般的格式如下:

if expression1
    statements1
elseif expression2
    statements2
else
    statements3
end

参数

1、expression

expression参数一个MATLAB表达式,通常由一些变量或者联合相关操作的更小的表达式(例如:count < limit)或者逻辑函数(例如:isreal(A))组成。简单表达式可以结合一些逻辑运算符(&,|,~)变成复合表达式,例如下面的组合表达式从左到右根据操作符优先级进行计算。

(count < limit) & ((height - offset) >= 0)

2、statements

statements参数是一条或者多条仅仅当expression为true或者非零时而执行的MATLAB语句。

备注

非标量表达式:

如果需要计算的表达式产生一个非标量的值,那么只有当该值的每一个元素都为true或者非零时,才认为该表达式为true。例如,对于语句if(A<B),只有当A矩阵的每一个元素都小于B矩阵对应元素时,才认为此表达式为true。

计算部分表达式值:

在if或者while语句中,并不是所有情况都要计算整个表达式的值,在某些情况下,只需计算部分值就可以判断真假,这样往往是更优的。例如:

在下面表达式1中,如果A为零,那么整个表达式的值为false,而不管B的值如何,这样就没必要计算B的值,而MATLAB也不会去计算它。同样,在表达式2中,如果A为非零,那么整个表达式为true,而不管B的值如何。这些时候都不需要计算表达式后面部分的值。

1)   if (A & B)               2)   if (A | B)

如果前半部分的值能评估整个表达式状态,你可以通过这个属性来优化程序。例如:

while (b ~= 0) & (a/b > 18.5)
if exist('myfun.m') & (myfun(x) >= y)
if iscell(A) & all(cellfun('isreal', A))

示例

1、在下面这个示例中,如果两个条件都满足,那么学生将通过这课程。

if ((attendance >= 0.90) & (grade_average >= 60))
   pass = 1;
end;

2、已知矩阵A和B,

A =                 B =
     1     0            1     1
     2     3            3     4

则有下面结果:

最后

以上就是个性大雁为你收集整理的matlab中的if语句的全部内容,希望文章能够帮你解决matlab中的if语句所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部