第三节 MATLAB基本语法

点乘运算

,

常与其他运算符

点乘运算,常与其他运算符联合使用(如.\)

矩阵生成 矩阵生成 向量生成或子阵提取本节将会介绍一些MATLAB的基本语法的使用。

在 MATLAB 环境下进行的操作就像是使用一个超级复杂的计算器,不要被这吓到了。在您开始使用 MATLAB 时可以在">>"命令提示符下输入命令。

执行MATLAB命令

MATLAB 是一种解释型的环境。也就是说,只要你给MATLAB一个命令,它就会马上开始执行。

MATLAB实践

在">>" 命令提示符下键入一个有效的表达,例如:

复制代码
5 + 5

然后按 ENTER 键

当点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它并返回结果:

复制代码
ans = 10

让我们使用几个例子:

复制代码
3 ^ 2	       % 3 raised to the power of 2

当你点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它并返回结果:

复制代码
ans = 9

另外一个例子:

复制代码
sin(pi /2)	  % sine of angle 90o

当你点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它并返回结果:

复制代码
ans = 1

另外一个例子,

复制代码
7/0		      % Divide by zero

当点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它并返回结果:

复制代码
ans = Inf
warning: division by zero

另外一个例子,

复制代码
732 * 20.3	

当点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它并返回结果:

复制代码
ans =  1.4860e+04

MATLAB 提供了一些特殊的一些数学符号的表达,像圆周率 π, Inf for ∞, i (and j) for √-1 etc. Nan 代表"不是一个数字"。

MATLAB常用的运算符和特殊字符

MATLAB常用的运算符和特殊字符如下表所示:

运算符 目的
+ 加;加法运算符
- 减;减法运算符
* 标量和矩阵乘法运算符
.* 数组乘法运算符
^ 标量和矩阵求幂运算符
.^ 数组求幂运算符
\ 矩阵左除
/ 矩阵右除
.\ 阵列左除
./ 阵列右除
: 向量生成;子阵提取
( ) 下标运算;参数定义
[ ] 矩阵生成
. 点乘运算,常与其他运算符联合使用
... 续行标志;行连续运算符
, 分行符(该行结果不显示)
; 语句结束;分行符(该行结果显示)
% 注释标志
_ 引用符号和转置运算符
._ 非共轭转置运算符
= 赋值运算符

MATLAB常用的运算符使用示例

MATLAB分号(;)使用

MATLAB中分号(;)表示语句结束;但是,如果想抑制和隐藏 MATLAB 输出表达,表达后添加一个分号。

例如,

复制代码
x = 3;
y = x + 5

当点击"执行"按钮,或者按"Ctrl+ E",MATLAB执行它立即返回的结果是:

复制代码
y =  8

MATLAB添加注释

MATLAB的百分比符号(%)是用于表示一个注释行。例如:

复制代码
x = 9	     % assign the value 9 to x

也可以写注释,使用一块块注释操作符%{%}。

MATLAB编辑器包括工具和上下文菜单项,来帮助添加,删除或更改注释的格式。

MATLAB特殊变量和常量

MATLAB支持以下特殊变量和常量:

Name Meaning
ans 默认的变量名,最近一次操作运算结果
eps 浮点数的相对误差
i,j 虚数单位,定义为 i2 = j2 = -1
Inf 代表无穷大
NaN 代表不定值(不是数字)
pi 圆周率

MATLAB命名变量

变量名称是由一个字母后由任意数量的字母,数字或下划线。

注意MATLAB中是区分大小写的。

变量名可以是任意长度,但是,MATLAB使用只有前N个字符,其中N是由函数namelengthmax。

保存你的工作进度

MATLAB使用save命令保存工作区中的所有变量,然后作为一个扩展名为.mat的文件,在当前目录中。

如以下例子:

复制代码
save myfile

该文件可以随时重新加载,然后使用load命令。

复制代码
load myfile
相关推荐
吃一口大米饭9 分钟前
合并两个有序链表(leetcode刷题)
java·数据结构·算法·leetcode·链表
Big David1 小时前
机器人抓取与操作经典规划算法(深蓝)——2
算法·机器人·具身智能
灰末2 小时前
Forsaken喜欢数论(线性筛)
算法
釉色清风3 小时前
【数据结构】动态内存管理函数
java·c语言·javascript·数据结构·c
gentle_ice3 小时前
leetcode——二叉树的最大深度(java)
java·数据结构·算法·leetcode
咒法师无翅鱼3 小时前
【leetcode】T1599
算法·leetcode·职场和发展
i_kmling3 小时前
Leetcode 119. 杨辉三角 II
c++·python·算法·leetcode
夏末秋也凉3 小时前
力扣-链表-206 反转链表
算法·leetcode·链表
干啥都是小小白5 小时前
yolov5错误更改与相关参数详解(train.py)
人工智能·算法·yolo
Steps-of-time5 小时前
Linux内核链表学习录
数据结构·学习·链表