Matlab系列之运算符和标点符号的功能介绍
前言
本来月初打算接着写的,但是电脑不小心进水,主板什么的都废了,周末才找时间拿去修好,心塞,就不多讲太多废话了,开始分享今天的内容,对MATLAB的运算符和基本运算做个介绍,然后再对标点符号进行功能说明。
运算符基本上和其他语言一样,包含了算术运算、逻辑运算和关系运算,运算符及其说明如下表所示。
运算符 |
形式 |
说明 |
算术运算符 |
+ |
加法 |
- |
减法 |
|
* |
矩阵乘法 |
|
.* |
数组乘法 |
|
^ |
矩阵乘方 |
|
.^ |
数组乘方 |
|
\ |
矩阵右除 |
|
/ |
矩阵左除 |
|
.\ |
数组右除 |
|
./ |
数组左除 |
|
逻辑运算符 |
& |
逻辑与 |
| |
逻辑或 |
|
~ |
逻辑非 |
|
关系运算符 |
== |
等于 |
~= |
不等于 |
|
< |
小于 |
|
> |
大于 |
|
<= |
小于等于 |
|
>= |
大于等于 |
算术运算符
算术运算符
在算术运算符中,会发现有矩阵运算和数组运算,也就是一个没点,一个有点,我更习惯叫数组运算为,点乘、点除等等,不过这不是重点,重要的是弄清楚这两个的区别:直接用代码来解释:
代码:a=eye(2),b=ones(2),c=a*b,d=a.*b
结果:
对代码做下解释,使用eye函数产生一个2维的单位对角矩阵,使用ones产生一个2维的全1矩阵,直接看结果也可以猜出两者的作用,然后分别使用“*”和“.*”,各自对应c和d,从结果可以分析出来,矩阵运算也就是不带点的运算就是按照矩阵的运算规则进行运算,而数组运算则是位置对应的元素进行运算,前提当然是参与运算的矩阵维度需要一致了,不然要报矩阵维度不一致的错误。
关系运算符
关系运算符就更好理解了,直接用来对两个变量进行比较,这变量可以是数值、数组和矩阵,也可以是不同类型的两个数据,有一个比较重要的就是,矩阵之间的比较是指维度相同的情况下,然后返回相同维度的比较结果,还有一个要注意的就是矩阵可以和标量比较,会返回只含0或1的数值或矩阵,1和0分别代表逻辑真假,也就是比较的两者是否相同,上代码看看效果。
代码:a=reshape(1:9,3,3),b=magic(3)
结果:
代码说明:本处的a就是使用reshape将一个1到9的行向量转换成一个3*3的矩阵,b就是使用magic产生一个三维的幻方矩阵。
然后使用两次不同的关系运算符来观察下结果:
逻辑运算符
逻辑运算符的理解就更简单了,学过其他编程语言的应该都比较清楚,我就直接来几个常用的运算及其结果,具体就不多说了。
逻辑与(&):1&1=1,1&0=0,0&0=0;总结就是全1为1,有0则0;
逻辑或(|):1&1=1,1&0=1,0&0=0;总结就是有1为1,全0为0;
逻辑非(~):~1=0,~0=1;这个和取反相同的意思。
对于关系运算和逻辑运算还有相关的函数,具体如下表,根据所需自行使用。
函数分类 |
函数名 |
说明 |
关系操作函数 |
eq(A,B) |
等于 |
ne(A,B) |
不等于 |
|
lt(A.B) |
小于 |
|
gt(A,B) |
大于 |
|
le(A,B) |
小于等于 |
|
ge(A,B) |
大于等于 |
|
逻辑运算函数 |
and(A,B) |
逻辑与 |
or(A,B) |
逻辑或 |
|
not(A,B) |
逻辑非 |
|
xor(A,B) |
逻辑异或 |
|
any(A) |
向量A中有非零元素时返回1 |
|
all(A) |
向量A中有非零元素时返回1 |
在编程时,若遇到多个运算符共存于一个运算式时,要注意运算符是有优先级的,最高级别的是算术运算符,其次是关系运算符,最后才是逻辑运算符,不过我一般不记忆这些,都是直接使用括号“( )”来改变运算顺序,感觉代码会易读一些,所以就不对各个优先级再多述了。
再对MATLAB的标点符号的作用做下介绍,直接看画的表吧,方便记忆。
名称 |
符号 |
功能 |
空格 |
|
变量之间或者数组行元素之间的分隔符 |
逗号 |
, |
用于要显示计算结果的命令之间的分隔符; |
点号 |
. |
数值中的小数点 |
分号 |
; |
控制对应的命令所在行的计算结果不显示; |
冒号 |
: |
用于生成数值数组; |
百分号 |
% |
用于注释 |
单引号 |
‘ |
用于包含字符串 |
圆括号 |
( ) |
用于引用数组元素; |
方括号 |
[ ] |
用于构成向量和矩阵; |
花括号 |
{ } |
用于构成元胞数组 |
下划线 |
_ |
长名称的变量命名时可以用上 |
续行号 |
… |
用于把后面行与该行连接以构成一个较长的命令 |
艾特符号 |
@ |
放在函数名前,形成函数句柄; |
表中的这些符号,我觉得冒号比较有趣,我跑几个代码看看结果,希望你们能够感受其魅力~
1、A=1:6
2、B=1.1:7.7
3、C=7:1
4、D=1:3:11
5、E=[1 2 3;4 5 6]
6、F=E(1,:)
7、G=E(:,1)
8、H=E(3:6)
9、A=[1 2 3;4 5 6;7 8 9],I=A(:,1:2)
可于此处下载相关表单文件
Matlab系列之运算符和标点符号的功能介绍相关推荐
- 安信可蓝牙模块TB系列实现远程OTA无线升级功能介绍,剖析整个实现原理和代码介绍。
文章目录 一.BLE FOTA简介 二.BLE SLAVE FOTA实现流程 通过手机APP 完成BLE设备的OTA演示 联系我们 一.BLE FOTA简介 BLE SLAVE设备除了有线升级(比如串 ...
- endnote一打开就自动关闭_EndNote系列教程(一):功能介绍与软件安装使用
写论文.做科研时最让人头疼的是什么?查找不到合适的文献?无法与合作伙伴轻松交流?参考文献格式傻傻分不清?EndNote 文献管理工具全方位帮你减轻文献搜索.整理.引用等冗杂工作带来的沉重负担. End ...
- Matlab系列之脚本与函数M文件与函数句柄
从Matlab篇章的开始到现在,已经讲了一些操作的基础知识,其实和很多语言都有一定的相似之处,接下来几篇打算分享一下关于Matlab编程的一些基础. 首先再回顾一下开篇时说到的M文件,分为脚本M文件和 ...
- Matlab系列之符号运算(上)
Matlab系列之符号运算 前言 创建符号对象 基本操作 符号变量的基本操作 符号表达式的基本操作 四则运算 多项式的操作 符号表达式化简 符号表达式的替换 反函数求解 复合函数 更多精彩等你发现~ ...
- Matlab系列之数组(矩阵)的生成
从本篇开始,会有一段时间都将用于记录数组.矩阵的操作等等,如果以前没有接触过相关的,可能会觉得要展示的是很复杂的东西,但并不是,这是一个很简单的部分,但也是一个很重要的部分,至少现在的我觉得这部分的内 ...
- matlab旧版比新版好用,MATLAB新版本及新功能介绍matlab2012b.PDF
MATLAB新版本及新功能介绍matlab2012b Matlab2012b New Feather Desktop 1. Toolstrip 代替了菜单和toolbar 1.1 Toolstrip ...
- Matlab系列记录之图像处理(结束篇)
Matlab系列记录之图像处理(结束篇) 前言 图像知识 图像类型 1.RGB图 2.灰度图 3.二值化图 读写图像文件 显示图像 示例 结果 图像运算 直方图 示例 结果 直方图均衡 示例 结果 灰 ...
- Matlab系列之二维图形(上)
Matlab系列之二维图形(上) 简要 绘制基础 plot 文字标注 (1) 添加图形标题 (2)添加坐标轴标注 (3)图例 (4)文本注释 示例 程序 结果 线型.点型和颜色 坐标轴设置 示例 结果 ...
- Matlab系列之GUI设计基础
Matlab系列之GUI设计基础 简介 编辑界面 菜单设计 控件设计 控件描述 个人理解 Matlab转译 控件属性 [1]外观与行为 [2]控件对象的信息 [3]回调函数 [4]状态信息 结束 更多 ...
最新文章
- 【题解】P3052 [USACO12MAR]摩天大楼里的奶牛Cows in a Skyscraper
- 宋仲基宋慧乔没能找到对的人,算法能帮我们找到么?
- Jupyter Notebook实现直接调用R
- 天涯社区服务器位置,天涯到底怎么了,哪份帖子都打不开,是服务器的问题吗...
- 二阶偏微分方程组 龙格库塔法_深度科普---电磁波(三):无激励下的真空中的Maxwell方程组的解...
- 【简介】操作系统概念
- 1019 数字黑洞 (20)
- Strategy模式的一点思考
- R语言学习笔记 | R语言的入门
- limesurvey_LimeSurvey简介:一个开源,功能丰富的轮询平台
- html5 播放器 github,GitHub - Little-girl-lily/player: html5版本音乐播放器,支持iOS设备...
- 使用BIGMAP地图下载器,生成卫星地图
- Revisiting Time Series Outlier Detection: Definitions and Benchmarks
- cdr 2021 卸载
- win11蓝牙连接耳机有回音的问题
- Android以太网架构源码
- 可以帮助提升程序员高效工作效率的常用小工具推荐
- 授信合同与贷款合同的区别
- MavSDKMavros学习笔记
- 电工电子自动控制实验设备QY-DG328B
热门文章
- png images反色保留背景透明
- Study JQuery《zTree自动点击第一个节点》
- matlab里滑动变阻器,利用MATLAB作图分析滑动变阻器大小的选择
- 五.QT cmake无法建立新文件的解决方法
- 直流无刷电机驱动的PWM频率
- Android深入理解文字绘制:FontMetrics字体测量及其TextPaint介绍
- 总工会招聘计算机及答案,2019 年事业单位工会系统招聘考试《工会基础知识》 真题库及答案【2019版】.pdf...
- 关于Android IPTV机顶盒现状与趋势的研究
- 走进java编程之第一课-超详细笔记-适合新手收入
- Python 有什么作用?