I have several arrays and what I need to do is create a loop that calculates the values of the adition of each value of an array with each value of another array as show below:
Array:
A = [A1 A2 A3] B = [B1 B2 B3] C = [C1 C2 C3]
Needed Values:
D = A1+B1+C1 E = A1+B1+C2 F = A1+B1+C3 G = A1+B2+C1 H = A1+B2+C2 I = A1+B2+C3 .... and so on
On a side note, what is the MATLAB notation for a specific value of an array such as A(1) = A1

 採用された回答

James Tursa
James Tursa 2021 年 1 月 22 日
編集済み: James Tursa 2021 年 1 月 22 日

0 投票

One way using implicit array expansion:
D = A(:) + reshape(B,1,[]) + reshape(C,1,1,[]);
Your results are the elements of D.
I'm not sure what you are asking about A(1) vs A1. A(1) is the MATLAB notation for the 1st element of variable A. A1 would be the name of a different variable ... it has no relationship to variable A.

2 件のコメント

Andrew Tubbs
Andrew Tubbs 2021 年 1 月 23 日
What I get with this is jumbles of information, where only the first value is correct. To be more specific each value of each array is an 11 value array itself and I need a loop that automatically that spits out the summation array.
Steven Lord
Steven Lord 2021 年 1 月 23 日
A = [1 2 4];
B = [8 16 32];
C = [64 128 256];
D = reshape(A, 3, 1) + reshape(B, 1, 3) + reshape(C, 1, 1, 3)
D =
D(:,:,1) = 73 81 97 74 82 98 76 84 100 D(:,:,2) = 137 145 161 138 146 162 140 148 164 D(:,:,3) = 265 273 289 266 274 290 268 276 292
[A(2)+B(3)+C(1), D(2, 3, 1)]
ans = 1×2
98 98

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMatrices and Arrays についてさらに検索

製品

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by