1.概念
逻辑型(logical)数据是用数字1和0分别表示真(true)或假(false)的状态;
2.用途
Matlab中一些运算会返回逻辑值,表示一个条件是否被满足,可以使用这些逻辑值来索引数组或执行条件代码,例如IF条件语句的用法;
3.逻辑变量的创建和表达
程序示例:
>> a=true %创建逻辑真,在Matlab中显示为1
>> b=false %创建逻辑假,在Matlab中显示为0
4.数值的真假规则
在Matlab中,把数值型矩阵转换成逻辑型矩阵时,数值0为假,非0数值为真;
程序示例:
>> a=[0 1 2 -1] %创建一个数值矩阵
>> b=logical(a) %使用logical把数值矩阵转换成逻辑型矩阵,返回[0 1 1 1]
5.逻辑运算符
逻辑运算符
6.逻辑真值表
逻辑真值表
7.逻辑运算示例
>> true & false %返回假
>> true | false %返回真
>> ~true %返回假
>> 1 & 0 %返回假
>> 2 & 0 %返回假
>> ~100 %返回假
8.常用的函数
判断是否全为真all
判断是否存在逻辑真any
程序示例:
>> all([0 1 1]) %返回假
>> all([1 1 1]) %返回真
>> any([0 1 1]) %返回真
>> any([1 1 1]) %返回真
>> any([0 0 0]) %返回假
9.实例:寻找一组数据中的偶数
题目:寻找并提取变量a=[0 1 2 -1]中所有的偶数
程序:
>> a=[0 1 2 -1];
>> b=mod(a,2) %求余数,返回元素为0和1的矩阵;mod函数用法见文章9:
>> c=~b; %逻辑非,返回元素为真和假的逻辑型矩阵
>> a(c) %逻辑索引,获得所有偶数;逻辑索引的用法见文章6:
最后附本文相关视频:
(微信公众号:freexyn)
End