谁做逻辑工作
2次浏览(过去30天)
显示旧的注释
接受的答案
更多答案(2)
约翰D 'Errico
2022年3月19日
当事情太大或太复杂时,把它拆开。试一试。
X = [2 3 4 8 10 0 -2]
x是一个整数向量。
mod做什么?
国防部(x, 2) = = 0
对每个数取模,取模2。偶数返回0,奇数返回1。等式右边是什么?5 * x (mod (x, 2) = = 0)
那么x(一个我们刚刚创建的二进制向量)是什么呢?试一试! !
这是一个掩码操作。它提取出对应于1的元素。本质上,它只提取x中的偶数元素。
x (mod (x, 2) = = 0)
然后它做了什么?把它们乘以5。
5 * x (mod (x, 2) = = 0)
这个等式有什么用呢?它告诉我们将这些元素填回到x中相同的对应元素中。
x (mod (x, 2) = = 0) = 5 * x (mod (x, 2) = = 0)
所以把它们放在一起。取x的每一个偶数元素,乘以5。然后把它放回原位。
如果某事太复杂,太大,你无法理解。那就把它拆开。只看小块。然后再组装起来。