過去問解きまくり研究所 ホーム

ITパスポート 平成23年度 特別 問96

基礎理論

配列に関する問題

〔中問B・プログラミングとテスト〕〔テクノロジ〕1 日券,2 日券といった日数の異なる種類のチケットの金額計算に対応できるように,〔処理内容〕の 2 及び関数の仕様を変更し,引数にチケットの日数を表す M を追加した。M には使用できる日数が入る。種類別のチケット金額を設定する配列を TP(M,N)とする。N は大人の場合は 1,子供の場合は 2 とする。配列の値は次のとおりである。引数が J=10,K=20,M=2 のときの合計金額は何円か。なお,関数は,引数に応じてこの配列を参照し,チケット金額を決定する。

〔中問B の記述(抜粋・再掲)〕チケット販売システムの関数は,大人と子供のチケットの購入希望枚数 J,K を基に合計金額 L を計算する。一度に購入できる枚数はそれぞれ 20 枚までであり,購入条件を満たしていない場合は合計金額に −1 を代入する。合計で 20 枚以上購入する場合は,合計金額から 1 割を割り引く。

〔配列の値〕

N=1(大人)N=2(子供)
M=1(1 日券)TP(1,1)= 3,000TP(1,2)= 1,000
M=2(2 日券)TP(2,1)= 4,000TP(2,2)= 1,500
M=3(3 日券)TP(3,1)= 5,000TP(3,2)= 2,000
答えと解説

✓ これが正解ウ 63,000

解説

日数の行を選んでから、大人と子供の値を取り出します。

金額は、日数と区分の二つで決まる表に置かれています。縦の並びが日数で、横の並びが大人と子供です。設問の日数は二日なので、二行目を選びます。その行の大人の値は四千円、子供の値は千五百円です。大人は十枚なので四万円、子供は二十枚なので三万円になります。どちらも二十枚までなので、買える条件は満たしています。足すと七万円ですが、まだ終わりではありません。合計の枚数は三十枚で二十枚を超えているので、一割を引いて六万三千円になります。この数を挙げた選択肢が正解です。一日の行を選ぶと、割り引く前が五万円、割り引いた後が四万五千円になります。割引を落とすと七万円になります。先に正しい行を決めることが要点です。シラバスも、配列をデータ構造の考え方として挙げています。

ほかの選択肢の解説

この分野を演習で解く この問題を記録に残す

関連用語

出典:平成23年度 特別 ITパスポート試験 問96(改変:原典の図表をテキストに書き起こした)

解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。

関連問題

同じ分野の問題

誤りを見つけたら報告する(メールが開きます)