アカウント
メニュー
以下のPythonプログラムは預金の利息をシミュレーションするものです。正しいシミュレーション結果を選んでください
1balance = 10000 # 初期残高 2interest_rate = 0.05 # 年利5% 3 4for year in range(1, 4): 5 balance *= (1 + interest_rate) 6 7print(balance)
11,500
12,000
11,762.50
12,350.63
答えを見る
不正解
(あなたの解答:未回答)
このプログラムは複利計算を行っています。 balanceに10000を代入し、for文でループしながらbalanceにinterest_rate分の年利を掛け算した値をbalanceに上書きしています。 for文のrangeが(1,4)となっており、これはyearが1≦year<4の間、yearを1つずつ増加しながらループしていくという意味なので、yearは1,2,3の値を取り、合計3回のループをします。 これらの情報をもとにプログラムの実行フローを見ていくと 初年度の残高は 10000×1.05=10500円、 2年目は 10500×1.05=11025円、 3年目は 11025×1.05=11576.25円となり、3年後の残高は約11,762.50円になります。 選択肢アとイは年利を掛け算するときに常に初期残高のbalanceに掛け算している単利計算の結果であり、プログラムが行っている複利計算とは異なります。 エは複利で計算されていますが、4回ループしているため、3年後の結果とは異なります。
問138 : 貯金の利息計算シミュレーション(モデル化とシミュレーション)