一覧 / 11月7日
A国 B国 ? ? A国の王様 君にまず200万円。そして毎月、先月より300万円増やした金を届けよう B国の王様 君にまず1円。そして2か月ごとに、前回より2倍増やした金を届けよう
2026年11月7日 テスト

王様たちの褒美

A国とB国の王様

あなたは二人の王様の命を救いました。二人の王様は褒美を約束しましたが、彼らは敵対しており、どちらか一人を選ばなければいけません。

A国:「君にまず200万円、そして毎月、先月より300万円増やした金を届けよう」
B国:「君にまず1円、そして2か月ごとに、前回より2倍増やした金を届けよう」

それぞれ、期間は5年間です。

= 100万円 1か月目200万円+300万2か月目500万円+300万3か月目800万円+300万4か月目1100万円+300万5か月目1400万円+300万6か月目1700万円…?60か月目?万円
= 1円玉 1まい 1か月目1円×22か月目なし3か月目2円×24か月目なし5か月目4円×26か月目なし7か月目8円×28か月目なし9か月目16円×210か月目なし11か月目32円…?59か月目?円
A国:毎月もらう(60回) B国:2か月ごとにもらう(30回) 1年目1234567891011122年目1314151617181920212223243年目2526272829303132333435364年目3738394041424344454647485年目495051525354555657585960
1
A国の王様から貰える褒美は総額いくらか? for 文を用いて求めなさい
10点
答え
円
コード
2
B国の王様から貰える褒美は総額いくらか? for 文を用いて求めなさい
10点
答え
円
コード
3
A国の王様を選んだ場合、もらった褒美の総額が一億円に到達するには何ヶ月かかるか? while 文を用いて求めなさい

ちょうど1億円になった月も「到達」とします。

10点
答え
か月
コード
4
B国の王様を選んだ場合、もらった褒美の総額が一億円に到達するには何ヶ月かかるか? while 文を用いて求めなさい
10点
答え
か月
コード
5
引数として何ヵ月目かの整数を送ると A国の王様から受け取れる褒美の総額を返してくれるメソッドを作成しなさい
15点
int months 12 引数:何か月目か totalA(months) return 総額 戻り値:その月までの総額
コード
実行結果
totalA(3)
円
totalA(12)
円
totalA(60)
円
6
引数として何ヵ月目かの整数を送ると B国の王様から受け取れる褒美の総額を返してくれるメソッドを作成しなさい
15点
int months 12 引数:何か月目か totalB(months) return 総額 戻り値:その月までの総額
コード
実行結果
totalB(5)
円
totalB(20)
円
totalB(60)
円

C国の王様の宝物

剣 金貨 王冠 指輪 宝石 高価な布 貴重な書物 3つまで C国の王様 次の表に示す宝物の中から、好きな物を3つ選んで持ち帰ってよい どれにしよう…

実はあなたはC国の王様も救っていました。

C国:「次の表に示す宝物の中から好きな物を3つ選んで持ち帰ってよい」
宝物貰って良い量1kg当たりの価値
剣 32kg 3.3万円/kg
金貨 49kg 2.3万円/kg
王冠 9kg 11万円/kg
指輪 3kg 35万円/kg
宝石 81kg 1.3万円/kg
高価な布 504kg 0.2万円/kg
貴重な書物 1kg 100万円/kg

総額 = 量 × 1kg当たりの価値

7
宝物、量、価値の 3 つの配列を作成し、表に従ってデータを代入しなさい
10点
0123456番号(添字)String[]names"剣""金貨"?????int[]weights3249?????double[]values3.32.3?????1番はぜんぶ「金貨」
コード
8
3 つの配列から、for 文を用いて、最も総額の高い宝物を見つけてください
10点
宝物
その総額
万円
コード
9
価値を基準に、褒美として選ぶべき 3 つの宝物を見つけてください

持ち帰る総額の合計がいちばん多くなる3つを選びます。

10点
宝物(3つ)
3つの総額の合計
万円