第48問 おつりの関数、引数はどの順番?
おつりを計算する関数 otsuri を使います。この関数は、1つ目に「はらったお金」、2つ目に「品物のねだん」を受け取り、その差を返します。1000円をはらって780円の品物を買ったときのおつりを求めたい。呼び出すときの ( ) の中に、どの変数をどの順番で書けばよいでしょうか。あてはまるものを選ぼう(2か所の穴をうめよう)
難易度:★★☆☆☆(2/やさしい)。単元:関数。共通テスト「情報I」で使われるDNCL(共通テスト用プログラム表記)の穴埋め問題です。JavaScriptを有効にすると、このページでプログラムを組み立てて実行しながら解けます。
プログラム
関数 otsuri(harau, nedan):
kaeshi = harau - nedan
kaeshi を返す
harai = 1000
kakaku = 780
okane = otsuri([A], [B])
表示する("おつりは" + okane + "円です")
空欄 [A]・[B] に当てはまるものを、次の選択肢から選びます。
選択肢
ヒント
引数は、書いた順にそのまま関数へわたります。1つ目が harau、2つ目が nedan なので、呼び出す側も「はらったお金、ねだん」の順にそろえます
解答
- 空欄 [A] …
harai
- 空欄 [B] …
kakaku
よくある間違い
- [A]
kakaku [B]harai … 順番が逆です。1つ目が harau(はらったお金)、2つ目が nedan(ねだん)なので、この順だと 780 - 1000 になって -220 円になってしまいます
- [A]
harau [B]nedan … harau と nedan は関数の中だけで使う名前(引数)です。呼び出す側にはこの名前の変数はないので、値が無いあつかいになります。呼び出す側にある harai と kakaku をわたしましょう
- [A]
harai [B]nedan … 1つ目の harai は合っています。2つ目の nedan は関数の中だけの名前なので、呼び出す側からは使えません。ねだんが入っているのは kakaku です
- [A]
kakaku [B]nedan … どちらもずれています。1つ目には「はらったお金」の harai、2つ目には「ねだん」の kakaku をわたします。harau・nedan は関数の中だけの名前です
ほかの問題