プロが教える店舗&オフィスのセキュリティ対策術

いまいちfor文が分かりません
自分で書いたプログラムの一部ですが
なぜa[0]とa[1]の合計が22となるのですか?

int[] a = {2,2};
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length;j++){
a[i]+=a[j];
}
}

A 回答 (2件)

> i = 1, j = 0の時になぜ{6,2}ではなく{6,6}


> 何故ですか?

いや、違うでしょ。
i = 1, j = 0の時は{6, 8}ですよ。
全部 a[i] += a[j]なんで。
    • good
    • 0
この回答へのお礼

説明不足でした。6行目の{6,2}に何故4が足されて9行目途中にある{6,6}となった理由が知りたいです。

お礼日時:2022/01/15 16:10

a = {2, 2}


i = 0の時:
 j = 0の時:
  a[0] += a[0] -> a = {2 + 2, 2} -> a = {4, 2}
 j = 1の時:
  a[0] += a[1] -> a = {4 + 2, 2} -> a = {6, 2}
i = 1の時:
 j = 0の時:
  a[1] += a[0] -> a = {6, 6 + 2} -> a = {6, 8}
 j = 1の時:
  a[1] += a[1] -> a = {6, 8 + 8} -> a = {6, 16}
    • good
    • 1
この回答へのお礼

i = 1, j = 0の時になぜ{6,2}ではなく{6,6}
何故ですか?

お礼日時:2022/01/15 15:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!