第49問 関数を繰り返しの中で使う
1から4までの数を、それぞれ2乗して合計したい(1 + 4 + 9 + 16)。2乗を計算する関数 nijou を作り、繰り返しの中から呼び出して goukei にたしていきます。何回目かを数えている変数は i です。関数にわたす値として、あてはまるものを選ぼう
難易度:★★★☆☆(3/標準)。単元:繰り返し・関数。共通テスト「情報I」で使われるDNCL(共通テスト用プログラム表記)の穴埋め問題です。JavaScriptを有効にすると、このページでプログラムを組み立てて実行しながら解けます。
プログラム
関数 nijou(x):
x * x を返す
goukei = 0
i を 1 から 4 まで 1 ずつ増やしながら繰り返す:
ni = nijou([A])
goukei = goukei + ni
表示する("1から4までの2乗の合計は" + goukei)
空欄 [A] に当てはまるものを、次の選択肢から選びます。
選択肢
ヒント
繰り返しの中では i が 1, 2, 3, 4 と変わります。その i をそのまま関数にわたせば、1, 4, 9, 16 が順に返ってきます
解答
よくある間違い
- [A]
x … x は関数 nijou の中だけで使う名前(引数)です。繰り返している側には x という変数がないので、値が無いあつかいになり、合計は 0 のままです。何回目かを持っているのは i です
- [A]
goukei … goukei は合計を入れておく箱です。最初は 0 なので、nijou(0) は 0 になり、いつまでたっても合計は 0 のままです。2乗したいのは、いま何回目かを表す i です
- [A]
4 … 4 だと毎回 nijou(4) の 16 をたすので、16 が4回で 64 になってしまいます。1回目は 1、2回目は 2、…と変わる値が必要なので i をわたします
この単元の解説動画
ほかの問題