問題
次の擬似言語プログラムで、配列arr = [2, 7, 1, 8, 2, 8]に対して処理を行った後の配列の内容はどれか。 for (i を 0 から arr の要素数−1 まで 1 ずつ増やす) if (arr[i] mod 2 = 0) arr[i] ← arr[i] × 2 endif endfor
選択肢
- 1ア [4, 14, 2, 16, 4, 16]
- 2イ [4, 7, 1, 16, 4, 16]
- 3ウ [2, 14, 1, 8, 2, 8]
- 4エ [4, 7, 2, 16, 4, 16]
解答と解説を見る
正解
2. イ [4, 7, 1, 16, 4, 16]
解説
偶数の要素だけを2倍にします。2→4(偶数)、7→7(奇数、そのまま)、1→1(奇数、そのまま)、8→16(偶数)、2→4(偶数)、8→16(偶数)。結果は[4, 7, 1, 16, 4, 16]です。