必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. ITパスポート
  3. 平成23年度特別問題一覧
  4. 平成23年度特別問題93-解答・解説-分析

平成23年度特別問題

問題93

【中間B】 プログラミングとテストに関する次の記述を読んで、問93~96に答えよ。

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

関数の処理の流れを図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

解答:ア

<解説>

  1. 分岐条件でNoと判断されると、L=-1処理が行われる。[処理内容](1)の記述から、[ a ]は、購入条件の判定処理だと分かる。
  2. 購入条件は、KとJが両方とも0~20であることなので、正解はアである。