matlab系列文章:👉 目录 👈
〇、概述
逻辑型:也就是其它语言中的布尔型,包括 真(true)
、假(false)
两种数值。在适当的场景使用逻辑型能够简化相关操作。
一、逻辑型
逻辑型的值只有两个:true
(真)、false
(假),在 matlab 中也可以用 0
和 1
表示。
可以使用 logical()
函数将 数值型 转化为 逻辑型。
二、逻辑型创建
逻辑型有三种创建方式:直接赋值、根据表达式创建 以及 函数转化。
- 直接赋值 就是直接将逻辑型值赋值给变量
- 函数转换 是使用
logical()
函数将数值型数据转换成逻辑型
1. 直接赋值
>> x = true %令x为true
x =
logical
1
>>
>> y = false %令y为false
y =
logical
0
>>
>> whos
Name Size Bytes Class Attributes
x 1x1 1 logical
y 1x1 1 logical
2. 根据表达式创建
其次,逻辑型变量也可以根据表达式的返回值进行创建或赋值。
>> c = 10<9
c =
logical
0
>>
>> d = 10>9
d =
logical
1
>>
>> whos
Name Size Bytes Class Attributes
c 1x1 1 logical
d 1x1 1 logical
3. 使用 logical 函数转换
使用 logical()
函数转化有以下两种情况:
- 非
0
数值型转化为逻辑型1
,也就是true
(真) - 数值型
0
转化为逻辑型0
,也就是false
(假)
>> a = logical(10) %非0数值型转化为逻辑型1(ture)
a =
logical
1
>>
>> b = logical(0) %数值型0转化为逻辑型0(false)
b =
logical
0
>>
>> whos
Name Size Bytes Class Attributes
a 1x1 1 logical
b 1x1 1 logical
三、逻辑型矩阵
1. 创建逻辑型矩阵
ture()
函数 和 false()
函数除了上面创建逻辑型的用法之外,还可以用来,创建 n*n
阶的逻辑型方阵,示例如下:
>> e = true(4)
e =
4×4 logical 数组
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
>>
>> f = false(5)
f =
5×5 logical 数组
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>>
>> whos
Name Size Bytes Class Attributes
e 4x4 16 logical
f 5x5 25 logical
也可以用来创建 n*m
阶矩阵。
>> g = true(4,9)
g =
4×9 logical 数组
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
>>
>> g = false(4,5)
g =
4×5 logical 数组
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
2. 转化逻辑型矩阵
可以使用 true()
函数 和 false()
函数 配合 size()
函数将数值型矩阵转化为逻辑型矩阵。
>> A = [1,2,3;4,5,6]
A =
1 2 3
4 5 6
>>
>> false(size(A))
ans =
2×3 logical 数组
0 0 0
0 0 0
>>
>> true(size(A))
ans =
2×3 logical 数组
1 1 1
1 1 1