Home > 中問 > H23特別-問93

H23特別-問93

[中問B]
プログラミングとテストに関する次の記述を読んで、問に答えよ。

Q社のRさんは、チケット販売システムの開発で使用する関数のプログラミングとテストを実施しようとしている。この関数は、大人と子供のチケットの購入希望枚数を基に、合計金額の計算を行う。大人のチケットは3,000円、子供のチケットは1,000円である。一度に購入できる大人と子供のチケットの最高枚数は、それぞれ20枚までであり、関数はこの購入条件を満たしているかどうかをチェックする。また、合計で20枚以上購入する場合、割引処理を行う。関数の仕様と処理内容は次のとおりである。

[関数の仕様]
関数に渡される引数
J:大人のチケットの購入希望枚数、K:子供のチケットの購入希望枚数(J、Kは0以上の整数)
関数の戻り値
L:合計金額(Lは整数)

[処理内容]
(1)購入希望枚数を基に、購入条件を満たしているかどうかを判定する。購入条件を満たしていない場合、合計金額に-1を代入する。
(2)購入条件を満たしている場合、引数を基に次のとおりに合計金額の計算を行う。
合計金額=大人のチケットの購入希望枚数×3,000+子供のチケットの購入希望枚数×1,000
(3)チケットを合計で20枚以上購入した場合は、合計金額から1割を割り引く。

関数の処理の流れを図1に示す。図1のaに入れる適切な条件式はどれか。

ア:0≦J≦20 and 0≦K≦20

イ:0≦J≦20 or 0≦K≦20

ウ:0≦J+K≦20

エ:J>20 and K>20

答:ア

条件aがNoのときにL=-1となっているので、条件aは購入条件の判定であることがわかる。

設問から、一度に購入できる大人と子供のチケットの最高枚数は、それぞれ20枚と決まっているので、大人のチケットの購入希望枚数Jと、子供のチケットの購入希望枚数Kの両方が、0以上20以下という条件が正しい。

よって正解はアとなる。

スポンサーリンク

Home > 中問 > H23特別-問93

Page Top

© 2011-2022 過去問.com