- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab程序设计第03章研讨
四、逻辑函数 除了与()、或(|)、非(~)这三个逻辑运算符以外,MATLAB还提供了一些逻辑运算函数。主要有异或函数(xor)、 all函数、 any函数、isnan函数、isinf函数和isfinite 函数 异或函数xor对两个运算数作异或运算。当两个运算数中对应元素逻辑上的真假值相反时,表达式的值为真,其他情况(两个都真或两个都假)为假 异或函数xor返回值为0-1矩阵。当逻辑表达式的值为真时,返回元素1,否则返回0 例如,变量a和b都为1时,命令xor(a,b)将得到ans=0 3.4 运算符 当向量的元素都为真时, all函数将返回变量1,否则返回变量0。 对于矩阵,函数all对列操作。当某列的元素都为真时,返回值1。函数all对于矩阵的最终运算结果为一个行向量 【例如】 ??? u=[1 2 3 4 0; 3 2 4 5 1]; All(u) ans = 1 1 1 1 0 当向量中至少有一个元素为真时,any函数将返回变量1;只有当向量中的所有元素全为假才返回变量0 和函数all一样,当运算数为矩阵时,函数any将逐列运算,最后返回结果为一个0-1行向量 3.4 运算符 函数isnan、isinf和isfinite返回和运算数同维的数组。 当运算数的元素为NaN时,函数isnan在返回数组的相应位置返回1,否则返回0。 当运算数的元素为inf时,函数isinf在返回数组的相应位置返回l,否则返回0。 当运算数的元素不为inf和NaN时,函数isfinite在相应的位置返回1,否则返回0。 3.4 运算符 A=[0 1 5 ;2 NaN inf]; B=[0 0 1 ;5 25 inf]; C=A./B ???? Warning:Divide by zero.???? C = NaN Inf 5.0000 0.4000 NaN NaN???? isfinite(C)????? ans = 0 0 1 1 0 0???? isnan(C)????? ans = 1 0 0 0 1 1?? ? ? isinf(C) ans = 0 1 0 0 0 0 例如下面为一个使用函数isnan、isinf和isfinite的例子。在程序段第三行中的运算符“/”表示对矩阵的对应元素相除。 当NaN和别的数计算时,所得结果均为NaN,事实上,所有含NaN的表达式的值均为NaN,一般称这为NaN的传播性。表达式inf/inf、0/0的值为NaN。表达式1/inf的值为0。?? 函数find用于于查找向量中的真元素的下标。对于数值向量,真元素即为非0元素。在find的常用调用格式中,将返回向量中满足要求的下标组成的列向量 3.4 运算符 【例如】 A=magic(3) %生成三阶魔方矩阵。?? A=????? 8 1 6????? 3 5 7????? 4 9 2???? ??????? i=find(A5) % 查找命令A5生成的0-1矩阵中的非0元素,并将非元素在 %矩阵中的一维下标生成列向量i。 ?????? i=????????? 1????????? 6????????? 7????????? 8??? A(i)=1000 % 将魔方矩阵中下标为i的元素赋值为1000。?????? A=???????? 1000 1 1000???????? 3??? 5 1000???????? 4 1000??? 2 3.4 运算符 五、位运算符??? matlab提供了丰富的位运算功能。位运算符见表3.4 位运算符 说明 bitand 位对位的AND bitcmp 每个位的NOT bitor 每个位的OR bitxor 位对位的XOR bitset 设定某位 bitget 取得某位 bitshift 移位 3.4 运算符 例如,数字10的二进制值是1010,4的二进制是0100,因此数字10和4的bitor应为14,可验证如下:??? ??? bitor(22,4)? ? ans=??? ??? 14? 又例如,将18的二进制表示法向左移一位,其效果相当于乘2,可验证如下:? ? bitshift
您可能关注的文档
最近下载
- Unit 1 Fun numbers and letters (说课稿)-2024-2025学年人教PEP版(一起)(2024)英语二年级上册.docx VIP
- 印刷成本核算方式.docx VIP
- 森林防火教学课件.ppt VIP
- 二级保密资格档案目录(24盒)优质材料.doc VIP
- 2025水利工程五大员专业题库(含答案).docx VIP
- 图书馆业务知识培训ppt课件.pptx VIP
- 传感器智能传感器与无线传感器网络技术.pptx VIP
- 中国共产党基层组织选举工作条例学习宣贯ppt课件.pptx VIP
- 游消费者行为学(第二版)孙九霞全套PPT课件.pptx
- 东芝 e-STUDIO 2000AC 2500AC 彩色复印机维修手册(拆卸安装篇).pdf VIP
文档评论(0)