-
-
STEP
3 実戦問題にチャレンジ
9
25120分
得点
目標時間
取り組み日
目標
実戦問題にチャレンジして、 今の実力を
確かめよう
月
日
Aさんは18歳になって選挙権が得られたのを機に、比例代表選挙の当選者を決定する仕組み
に興味を持った。そこで各政党に配分する議席数 (当選者数)を決める方法を友人のBさんと
ブログラムを用いて検討してみることにした。会話文を読み, 次の各問いに答えよ。
比例代表選挙での各政党の当選者数はどうやって決まるのですか?
B:日本では,各政党の得票数を 1, 2, 3, ・・・と, 整数で割った商の大きい順に定められた議席
を配分する方法で決めています。 各政党が表1のとおり得票数を取り, 当選者数が6名であ
るとします。そのとき、表1のように ①から⑥の順に議席が各政党に割り当てられます。 ど
ういうことかというと,まず得票数を1で割った商を A, B, C,D の4つの党で比較して
最も大きな値をもつB党が①の議席を取り、 次に A,C,D の3つの党の1で割った商と
B党の2で割った商を比較して A党が②の議席を取り,さらに・・・というふうにしていくと、
最終的に表1のようにA党が②と⑥の議席, B党が①と④と⑤の議席, D党が③の議席を
取ることになります。
表1 各政党の得票数と整数で割った商
A
B党
C
D党
得票数
600
960
240
540
1で割った商
②600
①.960
240
③ 540
2で割った
⑥ 300
④ 480
120
270
3で割った商
200
⑤320
80
180
4で割った商
150
240
60
135
A: では、このような仕組みで当選者数を決めることができるプログラムを書いてみましょう。
まず,プログラムの中で扱うデータを図1と図2にまとめました。 配列 Tomei には各政党
の党名を,配列 Tokuhyo には各政党の得票数を、配列 Tosen には各政党に配分する議席数
(当選者数)を格納することにします。 Tosen の初期値は全部0にしておきます。
次に、①の議席の政党を決めるプログラムを書きましょう(図3)。 図3のプログラムを実
行したら図4の結果が表示されました。
i
Tomei
0
1
2
3
A党 B党 C党 D党
i
Tokuhyo 600
0
1
2
3
960
240
540
図1 各政党名が格納されている配列
図2 得票数が格納されている配列