MATLAB 的运算符
在MATLAB中,提供了丰富的运算符,运算主要包括算数运算、关系运算和逻辑运算。
一、算数运算符
分为标量和数组运算和矩阵运算。需要注意:对于a/b,是a除以b,对于a\b,是b除以a。在MATLAB中,采用符号^表示乘方运算,采用 log2()计算对数。
例子:
>> a=;
>> b=;
>> c1=a*b %乘法
c1 = ------------------------------------------
>> c1=a/b %右除法
c1 =
1.3333
------------------------------------------
>> c3=a\b %左除法
c3 =
0.7500
------------------------------------------
>> c4=^ %乘方
c4 = ------------------------------------------
>> c5=log2(c4) %对数 c5 =
二、关系运算符(返回值是逻辑型logical)
例子:
>> a=randn(,) %randn()产生由随机数组成的矩阵
a =
-0.2050 1.4090 -1.2075 0.4889 -0.3034
-0.1241 1.4172 0.7172 1.0347 0.2939
1.4897 0.6715 1.6302 0.7269 -0.7873
------------------------------------------
>> b1=a>=0.3 %大于等于
b1 =
× logical 数组 0
------------------------------------------
>> b2=lt(a,0.7) %小于
b2 =
× logical 数组 ------------------------------------------
>> b2=b1~=b2 %不等于
b2 =
× logical 数组
另,对于浮点数的比较,因为浮点数在存储时存在相对误差。在程序中,最好不要直接比较两个浮点数是否相等,而是通过两个浮点数的差是否小于某个特别小的数来判断是否相等。
例子:比较两个浮点数是否相等。
>> format long; %改变数据显示的位数
>> a=3.1415926
a =
3.141592600000000
----------------------------------------------------------------
>> c1=a==pi %直接进行比较,采用关系运算符“==”,则两个浮点数不相等
c1 =
logical ----------------------------------------------------------------
>> c2=abs(a-pi)<1e- %比较差值是否小于 1e-5,是则相等
c2 =
logical
三、逻辑运算符
MATLAB的逻辑运算分为三类,分别是:逐个元素的逻辑运算、快速逻辑运算、逐位逻辑运算。
(一)逐个元素的逻辑运算
运算符 | 函数 | 说明 |
& | and | 逻辑与(单目) |
| | or | 逻辑或(单目) |
~ | not | 逻辑非(双目) |
— | xor | 逻辑异或 |
(二)快速逻辑运算
运算符 | 说明 |
&& | 快速逻辑与,当第一个操作数为假时,直接返回假,否则与 & 相同 |
|| | 快速逻辑或,当第一个操作数为真时,直接返回真,否则与 | 相同 |
(三)逐位逻辑运算
函数 | 函数说明 |
bitand(a,b) | 逐位逻辑与 |
bitor(a,b) | 逐位逻辑或 |
bitcmp(a,b) | 逐位逻辑非 |
bitxor(a,b) | 逐位逻辑异或 |
四、运算符的优先级
picture via :blog.sina.com.cn/xywatersky
MATLAB 的运算符的更多相关文章
- MATLAB关系运算符和逻辑运算符
1 关系运算符 关系运算符用来比较两个数之间的大小关系,在Matlab中的关系运算符包括: < 小于 <= 小于或等于 > 大于 >= 大于或等于 = ...
- MATLAB算术运算符和常用函数
1 算术运算符 Matlab中的算术运算符按优先级由高到低为: (1) ^ 幂 (2) * 乘 / 右除(正常除) ...
- 【Matlab】运算符使用整理 * .* / \ .'
[基本运算符] * :矩阵乘法or数与数相乘 .*:点乘,用于矩阵间对应元素的相乘,或数与数之间,数与矩阵之间的相乘. / :右除.a/b表示矩阵a乘以矩阵b的逆 \ :左除.a\b表示矩阵a的逆乘以 ...
- MATLAB中运算符优先级
下述运算符的优先级从低到高: 1.先决或(||): 2.先决与(&&): 3.逻辑或(|): 4.逻辑与(&): 5.等于类(<,<=,>,>=,==, ...
- MATLAB - 运算符
1.关系运算符用来比较两个数之间的大小关系,在Matlab中的关系运算符包括: < 小于 <= 小于或等于 > 大于 >= 大于或等于 == ...
- Matlab与C/C++联合编程之Matlab以MEX方式调用C/C++代码(二)
如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数: double add(double x, double y) { return x + y; } 现在我想要在Matlab中使用它,比 ...
- [置顶] [MATLAB技术贴]漫谈MATLAB矩阵转置
矩阵转置是matlab最基本的操作了,但这个基本操作,也是很多初学者容易出现问题的地方.本帖通过几个实例演示matlab矩阵转置的操作. 方法一:' 运算符与 .' 运算符 >>a ...
- 编写 Matlab mexFunction (C mex)
资料一 MATLAB的MEX文件编写和调试 1. MEX的编写格式 写MEX程序其实就是写一个DLL程序,所以你可以使用C,C++,Fortran等多种编程语言来写. 编写MEX程序的编辑器可以使用M ...
- Matlab以MEX方式调用C源代码【转载】
原文地址:http://blog.sina.com.cn/s/blog_468651400100coas.html 这是自己整理的一个对应的文档:<Matlab以MEX方式调用C源代码> ...
随机推荐
- 能Ping通外网但就是不能打开所有网页的解决办法
我碰到过两台电脑有这个问题.打百度的ip可以,但打网址不行.我记得是某个木马改动了三个dll文件,然后你电脑删了该木马,却没有恢复那三个dll所致.你google下dns恢复,注册dll关键字,一共要 ...
- JS—正则表达式
正则表达式的元字符是包含特殊含义的字符,它们有一些特殊的功能,可以控制匹配模式的方式,反斜杠后的元字符失去其特殊含义. 单个字符和数字 .表示匹配除换行符外的单个字符,两个.就表示匹配两个字符 var ...
- 线段树 (区间合并)【p2894】[USACO08FEB]酒店Hotel
Descripion 奶牛们最近的旅游计划,是到苏必利尔湖畔,享受那里的湖光山色,以及明媚的阳光.作为整个旅游的策划者和负责人,贝茜选择在湖边的一家著名的旅馆住宿.这个巨大的旅馆一共有N (1 < ...
- UVA 839 Not so Mobile (递归建立二叉树)
题目连接:http://acm.hust.edu.cn/vjudge/problem/19486 给你一个杠杆两端的物体的质量和力臂,如果质量为零,则下面是一个杠杆,判断是否所有杠杆平衡. 分析:递归 ...
- Linux命令之kill
kill [-s signal | -p] [ --] pid… kill –l [signal] 终止指定进程.命令kill将指定的信号发送到指定的进程或进程组.如果没有指定信号,则发送SIGTER ...
- oracle null 相关的另外2个方法
- BSGS与二次剩余
BSGS $Big\ Step\ Giant\ Step$,大步小步法,一种在$O(\sqrt{p})$内求解方程$a^x\equiv b (mod\ p)$的算法. 先考虑$p$为质数的情况. 令$ ...
- 【找规律】Codeforces Round #392 (Div. 2) C. Unfair Poll
C. Unfair Poll time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- 【分块】bzoj3196 Tyvj 1730 二逼平衡树
分块 或 树套树. 在每个块中维护一个有序表,查询时各种二分,全都是分块的经典操作,就不详细说了. 块的大小定为sqrt(n*log2(n))比较快. #include<cstdio> # ...
- 【莫队算法】【权值分块】poj2104 K-th Number / poj2761 Feed the dogs
先用莫队算法保证在询问之间转移的复杂度,每次转移都需要进行O(sqrt(m))次插入和删除,权值分块的插入/删除是O(1)的. 然后询问的时候用权值分块查询区间k小值,每次是O(sqrt(n))的. ...