matlab关系和逻辑运算

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
逻辑操作符 & | ~ 说明 与 或 非
»A=1:9;B=9-A; »tf=A>4 tf = 0 0 0 0
1
1
1
1
1
6
»A=1:9;B=9-A; »tf=A>4 tf = 0 0 0 0 找出A大于4。 »tf=~(A>4) tf = 1 1 1 1
»tf=(A>2)&(A<6) tf = 0 0 1 1
除了这些函数,MATLAB还提供了大量的函数,测试特殊值或 条件的存在,返回逻辑值。见教材表8-4
9
8.4
NaNs和空矩阵
NaNs和空矩阵([ ])要求在MATLAB中作特殊处理,特别 是用在逻辑或关系表达式里 。对NaNs的几乎所有运算都 得出NaNs nan:Not-a-Number Inf: Infinity 当NaN与NaN相比较时,产生全部为0或假的结果, 单个NaNs相互不相等
5
4
6
3
7
2
8
1
9
0
1
1
1
1
1
4
注意,=和= =意味着两种不同的事:= = 比较两个变量, 当它们相等时返回1,当它们不相等时返回0;在另一方 面, = 被用来将运算的结果赋给一个变量。 »tq=(A= =B) tq = 0 0 0
0
0
0
0
0
0
5
8.2 逻辑操作符
逻辑操作符提供了一种组合或否定关系表达式。 MATLAB逻辑操作符包括:
2
8.1 关系操作符
关系操作符 < <= > >= == ~= 说明 小于 小于或等于 大于 大于或等于 等于 不等于
3
MATLAB关系操作符能用来比较两个同样大小的数组,或 用来比较一个数组和一个标量。在后一种情况,标量和 数组中的每一个元素相比较,结果与数组大小一样。 »A=1:9, B=9-A A= 1 2 3 4 B= 8 7 6 5 »tf=A>4 tf = 0 0 0 0
14
(y~ =0)
j=find(y~ =0) y(j)
1
j=1 Error! y(j) does not exist.
11
当没有其它合适的结果时,在MATLAB中的许多函数返回空矩阵。 或许最普通的例子是函数find: »x=(1:5)-3 % new data x= -2 -1 0 1 2 »y=find(x>2) y= [ ] 在这个例子里,x没有包含大于2的值,所以没有返回下标。 为了测试空结果 MATLAB提供了逻辑函数isempty。 »isempty(y) ans = 1
第六讲 关系和逻辑运算
1、关系操作符 2、逻辑操作符 3、关系与逻辑函数 4、NaNs和空矩阵 5、各种运算符的优先级
江苏科技大学数理学院
除了传统的数学运算,MATLAB支持关系和逻辑运算,这 些操作符和函数的目的是提供求解真/假命题的答案。作 为所有关系和逻辑表达式的输入,MATLAB把任何非零数 值当作真,把零当作假。所有关系和逻辑表达式的输 出,对于真,输出为1;对于假,输出为0
12
8.5各种运算符号的优先级
优先级 最高 运算符 ()小括号 ’转置;.^数值乘方;^矩阵乘方 乘除
加减
冒号 关系运算
逻辑与
最低 逻辑或
算术运算级别 > 关系运算> 逻辑运算,但逻辑非的优先级别最高
13
8.5各种运算符号的优先级
习题课的时间里,完成教材中3-6章所有讲授过的 例题和习题。第5章中函数调用,第6章中关于数理 统计和符号运算的内容可以先跳过,力求将先前 遗留下来的问题都弄清楚,积极提问!
1
1
1
1
1
0
0
0
0
0
1
0
0
0
0
7
结合给出注释,重点理下面语句
»x=linspace(0, 10, 100); % create data »y=sin(x) ; % compute sine »z=(y>=0).*y ; % set negative values of sin(x) to zero »z=z+0.5*(y<0) ; % where sin(x) is negative add 1/2 »z=(x<=8).*z ; % set values past x=8 to zero »plot(x, z) %draw picture »xlabel(' x '),ylabel(' z=f(x) '),title(' A Discontinuous Signal ') %note the picture
8
8.3关系与逻辑函数
其 他 关 系 与 逻 辑 函 数
xor(x,y) 异或运算。x或y非零(真)返回1,x和y都是零(假)或都是非零(真)返回 0。 any(x) 如果在一个向量x中,任何元素是非零,返回1;矩阵x中的每一列有 非零元素,返回1。
all(x)
如果在一个向量x中,所有元素非零,返回1;矩阵x中的每一列所有 元素非零,返回1。
ቤተ መጻሕፍቲ ባይዱ
10
NaNs 和 空 矩 阵 数据 表达式 2*a (a= =nan) (a~ =nan) isnan(a) y=find(a= =0) isempty(y) (y= =0) find(y= =0) a=[1 2 nan inf nan] 结果
[2 4 NaN inf NaN]
[0 0 0 0 0] [1 1 1 1 1] [0 0 1 0 1] y=[ ] 1 0 [ ]
相关文档
最新文档