✨ คำตอบที่ดีที่สุด ✨
解説長いですが、解読してみてください🙇
(2)行目には、以下のことが書かれています。
・i=1を最初に設定します
・"└"の行まで処理を行う…この問題は(3)の行まで
・次は(イ)だけ加算します
・iが10になるまで処理を繰り返します(10を超えたら終了)
---
具体的に、(ア)が2(=atai)、(イ)が1としてみると、
最初:i=1
└atai=atai*2 … ataiの数値は、atai*2=2*2=4に入れ変わる
次2:i=i+(イ) … iは、i=i+(イ)=1+1=2に入れ変わる
└atai=atai*2 … ataiの数値は、atai*2=4*2=8に入れ変わる
次3:i=i+(イ) … iは、i=i+(イ)=2+1=3に入れ変わる
└atai=atai*2 … ataiの数値は、atai*2=8*2=16に入れ変わる
…
次10:i=i+(イ) … iは、i=i+(イ)=9+1=10に入れ変わる
└atai=atai*2 … ataiの数値は、atai*2=?*2=??に入れ変わる
次11:i=i+(イ) … iは、i=i+(イ)=10+1=11なので終了(10を超えた)
ataiを表示 :ataiは最初2で、これに2を10回掛け算したので、2*2¹⁰=2048
↑
たまたま、⓴の答えと一致しました。
----
この問題の解き方(答えの選択肢は正の整数が前提)
素因数分解がポイントです(少し数学的な内容の問題になっています)。
96=3・2・2・2・2・2=3・2⁵(3に2を5回掛けている)
atai=1or2or3と気づき、繰り返し処理を考えるとatai=3だと確信できる。
「掛ける2」を5回処理するには、iを2ずつ増やすと5回処理できる。
(i=1,3,5,7,9,11…11は10を超えてしまうので処理しないで終了)
⇒atai=3としたので(ア)=3、iを2ずつ増やしたので(イ)=2
2048=2・2・…・2=2¹¹(2を11回掛けている=2に2を10回掛けている)
atai=1or2と気づき、繰り返し処理を考えるとatai=2だと確信できる。
「掛ける2」を10回処理するには、iを1ずつ増やすと10回処理できる。
(i=1,2,…9,10,11…11は10を超えてしまうので処理しないで終了)
⇒atai=2としたので(ア)=2、iを1ずつ増やしたので(イ)=1
-----
iについて、
この問題では、繰り返しのカウント以外にiは使っていません。
(atai=atai+i のように計算に使う場合もあります)
とても丁寧に教えてくださったお陰で理解できましたありがとうございます😭❤️