我想計算可以被2整除的矩陣元素的總和。我該怎麼做?我如何以統籌形式輸出答案?如何計算矩陣中元素子集的總和?
1
A
回答
0
一些僞代碼。每一行都有很多循環遍歷每列。
sum = 0
for(i = 0; i < matrix.num_rows; i++) {
for(j = 0; j < matrix.num_cols; j++) {
if(matrix[i][j] % 2 == 0)
sum += matrix[i][j]
}
}
不確定你的意思是座標形式。
1
這是矩陣M
只有它甚至價值觀:
(mod(M,2) == 0).*M
您可以sum(M)
或sum(sum(M))
(不知道什麼是「統籌形式」的意思)概括。
4
如果你有矩陣M
,可以找到一個logical index(即掩模)對於其中偶數元素是通過使用MOD功能,可以在不需要循環對整個矩陣進行操作。對於在矩陣甚至項除以2後的餘數爲0:
index = (mod(M,2) == 0);
您可以使用函數FIND得到這些連項的行和列索引:
[rowIndices,colIndices] = find(index);
而且您可以通過索引M
從上面的邏輯掩碼來提取甚至條目和使用SUM功能得到比較穩定的元素的總和,將它們添加了:
evenSum = sum(M(index));
下面是使用功能MAGIC創造了一個矩陣M
一個例子:
>> M = magic(3)
M =
8 1 6
3 5 7
4 9 2
>> index = (mod(M,2) == 0)
index =
1 0 1 %# A matrix the same size as M with
0 0 0 %# 1 (i.e. "true") where entries of M are even
1 0 1 %# and 0 (i.e. "false") elsewhere
>> evenSum = sum(M(index))
evenSum =
20
相關問題
- 1. 計算總和矩陣
- 2. 來自矩陣的所有2x2子矩陣中的每個元素的總和
- 3. Python:用任意元素計算矩陣?
- 4. 從矩陣計算元素平均值
- 5. 如何計算元件在矩陣
- 6. MATLAB:如何計算矩陣元素的分佈
- 7. 如何劃分矩陣元素的行總和
- 8. 如何計算angularfire中的子元素?
- 9. 如何計算矩陣總和並對其進行比較
- 10. Prolog - 如何計算元素總數
- 11. 根據列和行總計計算值的矩陣
- 12. 如何加總結構中的矩陣(向量)元素
- 13. 矩陣計算
- 14. 計算矩陣
- 15. 計算矩陣中的特殊零元素
- 16. 使用R計算矩陣中每個元素的exp()
- 17. 矩陣R中計算矩陣
- 18. 如何用TensorFlow計算矩陣運算?
- 19. 子集矩陣
- 20. 從矩陣中刪除元素並計算平均值
- 21. 從性能計算中排除矩陣元素
- 22. 如何使用foreach計算上三角矩陣中的每個元素?
- 23. 矩陣元素
- 24. 如何用元素的總和替換子陣列?
- 25. R:計算矩陣的所有元素的值
- 26. 如何使用XSLT 1.0計算重複元素的總和
- 27. 矩陣中的列總和
- 28. Theano - theano矩陣列表的明智總和計算
- 29. 用於計算矩陣元素之間邊界的腳本
- 30. 計算在矩陣
OP標記MATLAB作爲語言。應該避免循環,因爲向量化通常要快得多。 Gnovice的解決方案甚至可以削減到一行:'sum(M(mod(M,2)== 0))' – Doresoom 2010-09-13 21:29:04
哦哇,謝謝。我想我沒有意識到OP最初將它標記爲MATLAB。我的錯。 – 2010-09-13 22:14:41