Matlab程序设计-第03章概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
四、逻辑函数 除了与()、或(|)、非(~)这三个逻辑运算符以外,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

文档评论(0)

w5544434 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档