あるプログラムが言葉で記述されている。Nに4を入力したときに出力される値を$x$、Nに9を入力したときに出力される値を$y$とする。$x$と$y$の値をそれぞれ求める。プログラムは以下の通り。 1. 正の整数Nを入力する。
2025/7/27
1. 問題の内容
あるプログラムが言葉で記述されている。Nに4を入力したときに出力される値を、Nに9を入力したときに出力される値をとする。との値をそれぞれ求める。プログラムは以下の通り。
1. 正の整数Nを入力する。
2. Iの初期値を1とする。
3. Sの初期値を0とする。
4. Sの値に$I$の3乗を加え、その値を新しいSの値とする。
5. もし、$I$の値が$N$の値に等しいならば、Sの値を出力して、処理を終了する。$I$の値が$N$の値と異なるならば、6へ。
6. $I$の値を1増やし、その値を新しい$I$の値として、4へ。
2. 解き方の手順
N = 4 の場合:
* I = 1, S = 0
* S = 0 + = 1
* I = 1, N = 4 なので、I ≠ N 。6へ
* I = 2
* S = 1 + = 1 + 8 = 9
* I = 2, N = 4 なので、I ≠ N 。6へ
* I = 3
* S = 9 + = 9 + 27 = 36
* I = 3, N = 4 なので、I ≠ N 。6へ
* I = 4
* S = 36 + = 36 + 64 = 100
* I = 4, N = 4 なので、I = N 。Sの値を出力する。
したがって、 = 100
N = 9 の場合:
* I = 1, S = 0
* S = 0 + = 1
* I = 1, N = 9 なので、I ≠ N 。6へ
* I = 2
* S = 1 + = 1 + 8 = 9
* I = 2, N = 9 なので、I ≠ N 。6へ
* I = 3
* S = 9 + = 9 + 27 = 36
* I = 3, N = 9 なので、I ≠ N 。6へ
* I = 4
* S = 36 + = 36 + 64 = 100
* I = 4, N = 9 なので、I ≠ N 。6へ
* I = 5
* S = 100 + = 100 + 125 = 225
* I = 5, N = 9 なので、I ≠ N 。6へ
* I = 6
* S = 225 + = 225 + 216 = 441
* I = 6, N = 9 なので、I ≠ N 。6へ
* I = 7
* S = 441 + = 441 + 343 = 784
* I = 7, N = 9 なので、I ≠ N 。6へ
* I = 8
* S = 784 + = 784 + 512 = 1296
* I = 8, N = 9 なので、I ≠ N 。6へ
* I = 9
* S = 1296 + = 1296 + 729 = 2025
* I = 9, N = 9 なので、I = N 。Sの値を出力する。
したがって、 = 2025
3. 最終的な答え
,