一、对向量执行数组运算
任务一
MATLAB 的设计让您能够自然地处理数组。例如,您可以将一个标量值与数组中的所有元素相加。
y = x + 2
任务
将 1
与 v1
的每个元素相加,然后将结果存储在名为 r
的变量中。
r = v1 +1
任务二
您可以将任意两个大小相同的数组相加。
z = x + y
任务
创建一个向量 vs
,它是向量 v1
和 v2
的和。
vs =v1 + v2
任务三
您可以将数组中的所有元素与某个标量相乘或相除。
z = 2*x y = x/3
任务
创建一个变量 va
,其值为 vs
/2
(平均体积)
va =vs/2
任务四
MATLAB 中的基本统计函数可应用于某个向量以生成单个输出。可以使用 max
函数来确定向量的最大值。
xMax = max(x)
任务
创建一个变量 vm
,其值为 va
向量的最大值。
vm = max(va)
任务五
MATLAB 的函数可在单个命令中对整个向量或值数组执行数学运算。
xSqrt = sqrt(x)
任务
使用 round
函数创建一个名为 vr
的变量,其中包含四舍五入为整数的平均体积 va
。
vr =round(va)
任务六
*
运算符执行矩阵乘法。因此,如果您使用 *
将两个大小相同的向量相乘,则由于内部维度不一致,您将会收到一条错误消息。
z = [3 4] * [10 20]
错误使用 * 用于矩阵乘法的维度不正确。
而 .*
运算符执行按元素乘法,允许您将两个大小相同的数组的对应元素相乘。
z = [3 4] .* [10 20]
z = 30 80
任务
创建一个名为 mass
的变量,其中包含 density
和 va
的按元素乘积。
mass =density.*va
附加练习
您已对如下元素执行了数组运算:
- 两个相同大小的数组
- 一个标量和一个数组
您还可以对其他具有兼容大小的数组执行运算。例如,尝试执行以下语句:
x = [1 2;3 4;5 6; 7 8].*[1;2;3;4]
x的大小是多少?