1 / 9
文档名称:

Matlab中的逻辑运算.doc

格式:doc   大小:24KB   页数:9页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Matlab中的逻辑运算.doc

上传人:drp539606 2019/2/11 文件大小:24 KB

下载得到文件列表

Matlab中的逻辑运算.doc

相关文档

文档介绍

文档介绍:(2009-12-0620:59:06)转载标签:杂谈逻辑运算符:&与|或~非“&”和“|”,如果A和B都是0-1矩阵,则A&B或A|B也都是0-1矩阵,这个0-1矩阵的元素是A和B对应元素之间逻辑运算的结果,逻辑操作符认定任何非零元素都为真,给出“1”,任何零元素都为假,给出“0”.非(或逻辑非)是一元操作符,即~A:当A是非零时结果为“0”;当A为“0”时,结果为“1”.因此下列两种表示:p|(~p)&(~p),设x是0-1向量,如果x中任意有一元素非零时,any(x)返回“1”,否则返回“0”;all(x)函数当x的所有元素非零时,返回“1”,否则也返回“0”.:ifall(A<5)dosomethingend另外,还有"&&"和"||"运算符,Matlab中的逻辑运算"&&"与"&","||"与"|"的区别如下:&&和||被称为&和|的shortcircuit形式,A&B(1)首先判断A的逻辑值,然后判断B的值,然后进行逻辑与的计算。(2)A和B可以为矩阵(=[10],B=[00])。A&&B(1)首先判断A的逻辑值,如果A的值为假,就可以判断整个表达式的值为假,就不需要再判断B的值。(2)A和B不能是矩阵,只能是标量。"|"与“||”同理。A&&B首先判断A的逻辑值,如果A的值为假,就可以判断整个表达式的值为假,就不需要再判断B的值。这种用法非常有用,如果A是一个计算量较小的函数,B是一个计算量较大的函数,那么首先判断A对减少计算量是有好处的。另外这也可以防止类似被0除的错误:flag=denum~=0&&num/denum>10ifflag%DoSomethingendif上面的表达式就可以防止denum等于0的情况。当然,如果你希望在判断的时候,对A和B表达式都进行计算,就应该使用标准的&或者|。Matlab中的if和while语句中的逻辑与和逻辑或都是默认使用short-circuit形式。ifflag=denum~=0&&num/denum>10%DoSomethingendif与ifflag=denum~=0&num/denum>10%DoSomethingendif执行的结果一样符号符号用途说明+加-减.*点乘详细说明helparith*矩阵相乘^矩阵求幂.^,作分隔用,如把矩阵元素、向量参数、函数参数、几个表达式分隔开来;(a)写在一个表达式后面时,运算后命令窗口中不显示表达式的计算结果(b)在创建矩阵的语句中指示一行元素的结束,例如m=[xyz;ijk]:(a)创建向量的表达式分隔符,如x=abc(b)a(,j)表示j列的所有行元素;a(i,)表示i行的所有列元素;a(13,4)表示第四列的第1行至第3行元素()圆括号[]创建数组、向量、矩阵或字符串(字母型){}创建单元矩阵(cellarray)或结构(struct)%注释符,特别当编写自定义函数文件时,紧跟function后的注释语句,在你使用help函数名时会显示出来。'(a)定义字符串用(b)向量或