ホーム > センター数学酷似試験
Sony Style(ソニースタイル)

倶楽部フォーラム


ようこそ。

ここはセンター数学試験で失点の原因を探り、それをなくしたい人のためのコンテンツです。

センター試験のように出題内容が定型化している試験は、受験に先立ち特別な対策をしておくと、普通に解いている人が驚くほど解答時間が短くなります。

実際に問題を解いたことのある方は、他の試験とは違う、異質な何かを感じた経験があるはずです。結局のところ、最も重要なポイントは事務的な処理の高速化です。

時間があれば全問解ける自信がある人は、練習すれば必ず、解答時間の半分以内で全問解答できるまで処理をスピードアップすることができます。

アクセルを全開にするのは、能力の問題ではなく、実際にやってみるかどうかだけの問題です。失点の原因は学力の問題ではなく、もっとテクニカルな部分にあることをここで体験してください。


センター数学酷似試験

以下のPDFファイルをダウンロードして、時間をはかって解いてみましょう。正解は巻末にあります。

数1・数A  数2・数B  
2011年数1A第01回   2011年数2B第01回   
2011年数1A第02回   2011年数2B第02回   
2011年数1A第03回   2011年数2B第03回   
2011年数1A第04回   2011年数2B第04回   
2011年数1A第05回   2011年数2B第05回   
2011年数1A第06回   2011年数2B第06回   
2011年数1A第07回   2011年数2B第07回   
2011年数1A第08回   2011年数2B第08回   
2011年数1A第09回   2011年数2B第09回   
2011年数1A第10回   2011年数2B第10回   
2011年数1A第11回   2011年数2B第11回   
2011年数1A第12回   2011年数2B第12回   
2011年数1A第13回   2011年数2B第13回   
2011年数1A第14回   2011年数2B第14回   
2011年数1A第15回   2011年数2B第15回   
2011年数1A第16回   2011年数2B第16回   
2011年数1A第17回   2011年数2B第17回   

同じ問題が続きます。これは満点を取るためには何が足りないのかをハッキリさせるためです。

十分な見直しの時間を残して確実に全問正解できないのであれば、原因と対策はこの中にあると気づくはずです。

工夫をして繰り返せば、何回目かに解答時間が目に見えて短くなります。そこがセンター試験で鍛えるべき筋力の部位です。

一つ自問してみましょう。問題の余白は十分ですか?もっと計算用紙が必要だと感じる人は、試験中に余計なことをメモしている可能性が高いでしょう。平方根の記号を簡単にして書いたり、ベクトルの上の矢印を省略すると、誰かが見て減点するでしょうか?記述式と同じように書き出していては、失点を確実につぶす時間が確保できないのは当然のことです。


コンピュータ単元の要点講座

数1・数Aと同様に、数2・数Bも選択の余地のない必答問題として解答することが当たり前のようになっています。しかし、それは正しい方針でしょうか。問題を見て選択を決める方針と比較すると、どちらが有利であるかは言うまでもないでしょう。

コンピュータの単元については。当クラブでもコンテンツを用意する予定ですが、優先順位は高くありません。そこで数2・数Bの6番の選択を考えている方のために、ここでコンバクトに要点を解説します。

本来ならば、数多くのプログラムを見て、自分でもプログラミングする経験を積むことが望まれますが、センター試験は過去の問題が蓄積されていますので、選択の一つに加えるかどうかを、以下の説明を見た上で、出題問題と照らし合わせて判断してください。

この際、センター試験以外のプログラムは参考にしないことを勧めます。出題者が拘束されていると思われる内部規約に配慮して、それらを踏襲している問題例は多くありません。

それではBASIC言語を最初から見てみましょう。次の[プログラム1]を見てください。このブログラムを実行すると、キーボードからの入力をうながされ、正の数を入力したときに限り、入力した数が画面に表示されます。

[プログラム1]




ゼロや負の数を入力すると、画面には何も表示されないまま、プログラムが終了します。太字になっている部分がコンピュータが理解できる命令です。

左側の通し番号は「行番号」と呼ばれ、プログラムを実行すると小さい番号から順に処理が実行されます。

 INPUT は処理をいったん中断して、キーボードから入力があるまで待機します。パソコンでログインするような画面に相当します。入力されると変数 N に値を代入して、次の行に処理が移ります。

 IF は THEN とセットになっていて、この二つの言葉にはされまている条件が成り立つときに限り、 THEN 以下の処理を実行します。条件が成り立たないときは THEN 以下を無視して次の行に移ります。

 PRINT は画面にデータを表示します。この場合は、文字 N に代入された値を表示します。

 END のある行にくると、そこでプログラムの処理を終了します。通常はプログラムの最後の行に記述されます。

行番号20 の行は「もし、N が正の値ならば、 N の値を画面に表示する」という意味です。シンプルです。

次の[ブログラム2]を見てください。新しく GOTO という命令が現れます。

[ブログラム2]





 GOTO の後ろに数字が記述されているときは、その数字は行番号です。 GOTO が実行されると指定した行番号に処理が移ります。つまり、上から順番の処理の流れを変えたいときに GOTO を使用します。移動した後はそこから行番号の順に処理を再開します。

この[プログラム2]を実行すると、ゼロ以下の値を入力した場合は、入力をうながされる画面に戻り、正の値を入力した場合は、それを画面に表示して終了します。等号付きの不等号は、不等号と等号を横に並べて表します。

次の[ブログラム3]は実行結果を言葉で表示するものです。

[ブログラム3]


“正の数”

“負の数”


ゼロでない数を入力すると、20行または30行の片方の PRINT だけが実行されるので、入力した数の符号を判定するブログラムになります。ゼロを入力すると、何も表示されずにプログラムが終了します。

ダブルクォーテーションで囲んだ部分は文字列と呼ばれ、そのまま画面に表示されます。

入力した数字もあわせて表示するブログラムは以下のようです。

[ブログラム4]


;“は正の数”

;“は負の数”


プログラムを実行して、3を入力すると、次のように表示されます。

は正の数

セミコロンで区切ると、変数の値と文字列を1行にまとめて表示させることができます。ダブルクォーテーションのペアから文字列を先に見つけて、変数と識別します。次のブログラムは入力した数値の二乗を返す関数値を出力するプログラムです。

[ブログラム5]


“F(”;
;“)
”;


20行の水色の部分が文字列です。

“F(”
“)

プログラムを実行して、5を入力すると、次のように表示されます。

F

次に1から10までの整数を画面に順に表示するプログラムを考えてみます。次のようなブログラム例が考えられます。

[ブログラム6]






このプログラムを実行すると、画面に次のように表示されます。

LET は変数に値を代入する命令です。10行では N に 0 を代入しています。代入に等号の記号を使うため、先頭にこのように代入を明示する命令を付けます。

古いプログラム※注では、この LET は省略してあります。文中に等式がそのまま現れたときは、等号を代入の記号と判断できるからです。ところが現在のBASIC言語の仕様では省略できないように変更されたため、今後のセンター試験でも必ず記述されます。

※注2005年以前の出題分のプログラムに該当します。

20行は「Nを一つカウントアップする」という意味です。Nに1を加えてNに戻します。等号は右辺を計算して左辺に代入する命令の一部です。片手の親指でストップウォッチのようにカチカチと押しながら、数を数えるカウンターと同じ意味です。したがって20行が一度実行されるとNの値は1になります。10行は、最初にカウンターを0にリセットする操作です。

40行では実行した回数を表すNの値をチェックして、10回に満たなければ、20行に処理を戻します。ピンボールマシンでボールを跳ね上げるイメージです。Nが10になると、THEN以下が無視されて50行で処理が終わります。

40行が実行される回数とNの値が等しいため、ちょうど1から10までの数が画面に次々に表示されます。

このプログラムの20行から40行は、同じ処理を繰り返すことから「ループ処理」と呼ばれます。参照する変数の値が変化するので、PRINTではそれぞれ違った値を表示することになります。

もうひとつ、同じ結果になる次のようなブログラム例を考えてみます。

[ブログラム7]







プログラムを実行すると、10行→20行→30行→40行→50行と処理が移ります。最初に20行が実行されるときは条件が成り立たないので、 THEN 以下は無視されて30行に移行します。

50行にくると無条件に20行に処理を戻します。

40行が10回実行されると、Nの値が11になり、この後に20行に戻った時点でTHEN以下が実行され、ENDのある行に処理が移り、ゲームオーバーになります。

こちらのループ処理は少し複雑ですが、ループの最初に終了判定のあるこの形の方がよく使われます。そして「ループ処理」であることを明示して、カウンターの変数の役割をはっきりさせるために次のような命令が使われることがあります。

同じ結果になるプロクラムです。

[ブログラム8]





FOR と NEXT は必ずペアになっています。ただし、 IF と THEN のペアとは異なり、必ず二つ以上離れた行に分かれてしまいます。FOR と NEXT の対応を見つけやすくするために、はさまれた全ての行の先頭を右にずらしてプログラムを記述します。

このようにすれば、FOR を見つけたら、真下を見れば必ず対応する NEXT が見つけられます。また右にずれた部分が、繰り返される処理であることが容易に判別できるので、プログラムを解読するときの参考にすることができます。

二つのプログラムを並べてみると、FOR と NEXTはそれぞれ複数の処理を内に含んでいることが分かります。












FORはループの回数をカウントする変数の初期化と、ループの終了の判定、また終了時のNEXTの次の行への移動を行います。NEXTはカウンター変数を一つ増やすことと、対応するFORへの移動です。

定型化した使い方をする複数の命令をパックにすることで、右のプログラムの方が読みやすくなっています。

ところで、この繰り返しの処理は初めてではなく、すでにおなじみのはずです。シグマ計算です。1から入力したNまでの連続した整数の和を求めるプログラムは次のようです。

[ブログラム9]








40行は、現在のSの値にKの値を加えてSに代入することを意味します。プログラムの中の等号には、この代入の意味と、IF と THEN ではさまれる条件式の二つの意味があります。代入の場合には LET が行の先頭に記述されます。

40行のように等号をまたいで同じ変数の現れる等式を見たときは、「SにKを加える」などのように自然に読み取れるようにしましょう。

BASIC言語は、センター試験が始まった当初に比べて大きく変化しました。 LET の扱いがその一例ですが、他の有力な言語の影響を受けて、構造上の見直しも行われています。

 IF によって条件が成立したときの THEN 以下の処理を二つ以上実行したいときなどは、当初は次のようなコロンで二つ以上の処理を並べて記述していました。次の[ブログラム10]は上の[ブログラム9]と同等のものです。

[ブログラム10]








興味深い機能ですが、このコロンの使用は認められなくなりました。したがって現在のセンター試験では次のように記述されます。

[ブログラム11]











この場合は IF と END IF がペアになっています。50行から70行はその対応がわかるように、一歩後ろに下がっています。

こうしたプログラムは不自然ですが、試験で記述されているプログラムを見る限りでは、出題者側には、外部には公開されない非常に厳しい制約があることがうかがえます。BASICの命令はこれらの他にもたくさんありますが、現在のところ出題される範囲はここで説明した範囲にとどまっています。

--------◇--------◇--------◇--------◇--------◇-------

それでは本題に入りましょう。

センター試験のコンピュータは数Bの選択問題であり、たとえば同じ数Bの選択単元に属する数列の内容を含むことができないため、扱えるテーマが極端に限定されており、ほとんどのテーマが整数問題に集中しています。

そのため突出して重要な要点が一つあります。それはINT関数です。与えられた数の整数部分を返す関数です。この関数の使い方を理解すれば、コンピュータの問題の印象が一変するでしょう。

次のプログラムはカッコの中の数の整数部分を返して、画面に表示するものです。

[ブログラム12]




このプログラムの実行結果は次の通りです。


INT関数はガウス記号です。負の数の場合の扱いにあいまいさがあるため、単に整数部分とはいわずに「 INT(X) は X を越えない最大の整数を表す関数」のように誤解がないように説明されます。上のプログラムの実行結果は次の計算と同じです。


整数であればその値のまま、小数があれば、小数点以下を切り捨てた整数の値を返します。それではポイントになる数学の問題を考えてみましょう。実数について次の方程式の解※注2を求めて下さい。


小数点以下を切り捨てても、もとの数と変わらない数は整数です。解は整数全体です。整数以外はこの方程式を満たしません。ということは、実数がこの方程式をみたすかどうかで、整数か整数でないかの判定ができることになります。次のプログラムは入力した値が整数のときにだけ、「整数」と画面に表示するものです。

[ブログラム13]


“整数”


シンプルです。次はこれを応用して偶数を判定するプログラムを作ってみましょう。次のように1行挿入して「整数」を「偶数」に書き換えます。



※注2以下のグラフととの交点の座標を求めよ。

[ブログラム14]



“偶数”


2で割って整数になる数が偶数です。2で割る処理を IF の中にまとめて次のように記述することもできます。

[ブログラム15]


“偶数”


プログラミングにも英熟語のようなものがあり、上のプログラムの条件は多くの場合、右辺の分母をはらって、次のように書かれます。

[ブログラム16]


“偶数”


この条件式を言葉で読み取れるようにしましょう。左辺と右辺は移項しても同じ意味です。条件式の中の等号は通常の等式として扱われます。

プログラム読み方
もしNが偶数ならば
もしNが偶数ならば
もしNが偶数ならば

この形は、倍数の判定に使えます。2のところを変えたりなどしてみましょう。

プログラム読み方
もしNが3の倍数ならば
もしNが4の倍数ならば
もしNが7の倍数ならば
もしNの1の位が0ならば

奇数の判定は次のようになります。ただし、Nは整数であることが前提です。

プログラム読み方
もしNが奇数ならば
もしNが奇数ならば

小数点以下を切り捨ててしまうと、二倍しても元の数よりも小さくなってしまうため、不等号の向きが確定します。しかしプログラムを読みやすくするために次のように記述されることもあります。不等号を並べると、等しくないという意味になります。

プログラム読み方
もしNが奇数ならば
もしNが3の倍数でないならば

N が整数のときは、両辺の差には次のような関係があります。

プログラム読み方
Nを2で割った余り
Nを3で割った余り
Nを5で割った余り
Nの1の位の数字

これらの式はプログラムの核心部分になることが多いですが、この条件式の形自体を問うことも、出題者側からは配点を作るポイントととらえられているらしく、しばしば選択枝で攪乱するような出題が見られます。次の選択枝のうち、「XがYの倍数である」ことを示す条件はどれでしょうか。


形を覚えていなくても問題はありません。INTについて解き直してみましょう。


変形して両辺に現れる分数は一致する必要があります。一致しなければ条件に意味はありません。分数が整数になるとき、分数の分子が倍数にあたる数で、分母が約数の方です。

見抜くコツをもうひとつ紹介します。まず、倍数と約数の関係はINTの中の分子と分母の関係からダイレクトに見抜きます。この部分はどのように変形してもカモフラージュしようがありません。それが正しい条件かどうかは、条件式からINTを消しゴムで消して成り立つかどうか暗算します。もう変形する必要も感じないでしょう?

面白いのは、これらの知識がなくてもINT関数の返す値を理解さえしていれば、一組の適当なX,Yを選んでチェックするだけで試験中に正答をあぶりだせることです。十分条件のチェックは有力な解法です。これは他の単元ではありえません※注3

コンピュータは一般的ではない具体的な実例に対しては、圧倒的な計算力で瞬時に解答を出してしまいます。次のプログラムは何をするためのものでしょうか?




※注3数列の単元の漸化式の解は、客観形式にすると式の形を利用して初項などから空欄を暴かれてしまうため、指数部分を選択枝にすることで、誠実な受験生に負担を強いてまでセキュリティ対策が施してあります。

[ブログラム17]










最初に入力されたNの値に対して、「N以下の自然数で、またはで割り切れる数の個数を計算する」プログラムです。N以下の自然数を全て一つ一つチェックして数えています。60行で重複してカウントした分を除くための調節をしています。

数学的な知識を使わずに、目的に忠実に手続きだけに注目して条件を満たすときだけを重複なしにカウントしていくプログラムは次のようです。

[ブログラム18]












ループ処理の中で、以降の処理を中断して、次の変数で処理を続けたいときは、60行のようにNEXTに処理を移します。条件式を工夫すると、処理の流れが少し簡単になります。

[ブログラム19]










上の40行を次のように変えると、「N以下の自然数で、でもでも割り切れる数の個数」を数えるプログラムに変わります。


問題を一つ出してみましょう。「N以下の自然数で、では割り切れるがでは割り切れない数の個数」を求めるプログラムに変えるには、[ブログラム19]の40行と50行をどのように変えればよいでしょうか。空欄を埋めてください。



60行は二つの条件を同時にクリアしたものが到達する行になるため、GOTOの後に指定されることはありえません。したがって二つのGOTOの後の行番号はともに70になります。正解は次のようです。



40行と50行は入れ替えても正しく動作します。

「N以下の自然数で、またはで割り切れる数の個数」を数えるブログラムは工夫して、次のように短くすることもできます。

[ブログラム20]








INTを有効に使えば次のようです。

[ブログラム21]




この他にもINT 関数は整数の処理に広く応用できます。しかしあまりプログラミング技術に深入りするものは扱われないことになっており、1997年から現在まで、この倍数の判定を越える使い方が出題されたことはありません。

少し進んだ例を考えてみましょう。入力した数の数字の並びを逆順にして表示するプログラムです。

[ブログラム22]






このプログラムを実行して正の整数を入力すると、数字の並びが逆順になって表示されます。たとえば、 と入力すると次のように画面に表示されます。


20行の最後にセミコロンが付いています。 PRINT の最後にセミコロンがある場合は、次の PRINT のための改行が行われません。前に表示した値のすぐ右側から表示が続けられます。セミコロンがない場合は、次の表示にそなえて改行されます。

30行は「Nの右端の数字を取り除く」という熟語です。この行で処理されるたびに、 は  に、  は  に変化し、最後は  になります。

20行で整数Nの1の位の数が取り出せる操作を段階的に考えておきましょう。

処理意味N=37のとき
小数点をひとつずらして、
右端の数を小数点以下にする
3.7
小数点以下をカットして捨てる 3
右端に0をくっつける 30
これを元の数から引く 37-30を計算

割る数をからに変更し、Nをいろいろ設定し、余りを点検してみましょう。数式を使って一般例で証明するよりも、この計算で余りが求まるシンプルなメカニズムに具体例で感心して納得する体験の方が重要です。

この[プログラム22]を複数の変数を使って、一度のPRINTで表示するように書き換えてみましょう。

[ブログラム23]











多くの変数が使用されているとき、それぞれの変数には役割があります。最も重要な変数は PRINT で参照される変数です。この場合はAがそれです。定数で初期化される変数は重要度が高いと覚えておきましょう。BとCは作業用の変数です。メモ代わりに一時的に値を保存しておく役割があります。Nは結果を得るための作業用変数として利用されるだけでなく、ループの回数を決める変数の役割もしています。

プログラムの解読の一つのコツは、最初の行から読むのではなく、最も重要な処理をしていると思われる部分から読み始めることです。意味のある処理のまとまりを意識すればさらに読みやすくなります。

ここではINTの部分に注目します。120行と130行を、Bを使わずにまとめて見ることができると、変数CNの1の位の数字を代入することが分かります。

120行で、いったん変数BNの右端の数字を除いた値を入れているのは、Nの1の位の数字を求める計算の途中の式であると同時に、次のNの値にもなっているからです。

140行と150行でAの値の右端にCの値の数字をくっつけると読みとれます。

実際のセンター試験では次のような記述の仕方も行われるようです。


灰色の部分がひとまとまりに見えれば、「ANの1の位の数字を加える」と直接読み取れます。

--------◇--------◇--------◇--------◇--------◇-------

次に、もう一つの INT関数の使い方を見てみましょう。ループの回数をダイナミックに設定するために使用される方法です。次のプログラムは入力された正の整数を、二つの正の整数の和に分解した結果を表すものです。

[ブログラム24]



“(”;
;“,”;
“;)”



プログラムを実行してを代入すると、次のように表示されます。






組み合わせを出力するようにプログラムを書き換えてみましょう。最後の二つを出力しないようにするにはループ回数を次のように調節します。

[ブログラム25]



“(”;
;“,”;
“;)”



左側の値の方が小さくなるようにする工夫です。
を解くと,

の範囲でループすればよいことになります。

このとき、が偶数の場合は右の等号が成り立ちますが、奇数の場合はそれよりも0.5だけ小さい値がループの回数になります。

プログラム内では具体的にNが与えられているので、実行時にINT関数を利用して、偶数と奇数で場合分けなどせずに、問答無用で一刀両断に豪快に処理しています。

NN/2INT(N/2)
211
31.51
422
52.52
633
73.53
 


--------◇--------◇--------◇--------◇--------◇-------

次に多重ループを見ておきましょう。

プログラムの構造としては複雑な部類に入りますが、センター試験では二重ループはよく出題されているようです。

さいころを二つ振って、和がになるそれぞれのさいころの目を画面に表示するプログラムは次のようです。

[ブログラム26]



“(”;
;“,”;
;“)”



このプログラムの実行結果は次のようです。




最初に110行が実行されるときには、の値はです。この状態のままで、110行から130行までのループ処理が行われます。次にの状態で、の値がに再び初期化されて、110行から130行までのループ処理が行われます。は全部でに初期化されることになります。

和がになるときのさいころの目の組み合わせだけを求めるには、一文字だけ変更すれば十分です。間違い探しのようですが、桃色の部分が変更箇所です。

[ブログラム27]



“(”;
;“,”;
;“)”



このプログラムの実行結果は次のようです。



110行のの初期化ではの値をコピーするため、内側のループはから6までとなり、回数は6,5,4,3,2,1回と順に減っていくことになります。

ループの動作を確認するために、特定行の実行回数が設問になることがあります。[ブログラム26]では120行は36回実行されますが、[ブログラム27]では I≦J の場合に限られるので、全部で21回実行されます。

ただし、これらは実際に数えるようなものに限られ、群数列や格子点列と結びつくようなタイプの計算に帰着されるものは出題されにくいようです。

--------◇--------◇--------◇--------◇--------◇-------

次に変数の交換を見てみましょう。基本操作として出題されるようです。二つの値を入力して、大きい方から小さい方を引いた値、つまり差の絶対値を表示するプログラムです。

[ブログラム28]






同じ内容のプログラム例です。PRINTを一つにして、負の値が表示されてしまうときには、あらかじめMとNの値を交換しています。

[ブログラム29]










50行でNの値をMの値に上書きコピーしています。これを実行すると実行前のMの値は失われてしまうので、その前に40行で退避用の変数AにMの値をセーブしておきます。60行ではセーブしておいたMの値をNにコピーしています。これでMとNの値を交換したことになります。

交換する変数の数に関係なく、連続するLETの最初と最後だけに、退避用の変数を使うことが必要です。

  • 最初に退避用の変数に、交換したい変数の一つをコピーする
  • 上書きされていない変数を、上書きされていない変数にコピーする
  • 最後に退避用の変数から、上書きされていない唯一の変数にコピーする

上のプログラムで、40行から60行までを次のように書き換えても、正しくMとNの値を交換できます。





変数の内容を交換させる設問があるときは、変数をバケツのような容器に見立て、二つの容器の中にある液体を交換したいときを考えればよいでしょう、内容の交換には空のバケツが一つ必要です。最初に空のバケツに片方の中身を移して(正確にはコピーして)、順に移し替えていく作業を考えれば混乱することはありません。

問題文中に与えられる次のような選択枝は最初の40行で、Mの値を失ってしまうため、残りの行を見なくても除外できます。また50行のように、初期化していない変数を参照すると常に望まない結果(バグ)を招きます。





問題の後半は多くの場合、プログラミング能力を問うという趣旨と思われる「福笑い」になっています。知識がない段階で、これらの設問を見ると、とても問題量が多いように感じられるのではないでしょうか。

しかし「福笑い」は一つ一つが関連しているため、いもづる式に空欄が埋まっていきます。空欄を埋めるコスト単価は、センター試験の中では最も低い部分だと言えるかも知れません。 また上での例で見たように、コンピュータの問題での不適当な選択枝は、数あわせのために対称性だけを理由に並べられているものが多く、紛れが少ないことも特徴です。

--------◇--------◇--------◇--------◇--------◇-------

統計とコンピュータの問題の中に多く含まれる「ノイズ」の情報について触れておきましょう。

統計とコンピュータは問題文中に提供される情報が多いのが特徴の一つですが、それらの中には問題を厳密にするために記述されているだけで、正解を出すためには無関係な情報が少なくありません。

注目度の高い試験であるために、時には根拠の薄い批判を受けることもあり、出題者の負担は非常に高いものになっています。

今年度の本試験の問題文中には「10の5乗以下の自然数から始めると、この操作を何回か繰り返すことで必ず1が得られることが確かめられている」という不思議な但し書きが記述してあります。これはなぜでしょうか。コンピュータに詳しい方は、プログラムを実行する旧型のマシンの実数の精度に配慮したものであると思うかも知れません。

出題者がこの但し書きをつけた理由は、まだ証明が与えられていない数学上の未解決の問題をテーマに取り上げて慎重になったからです。そのためコンピュータなどで一つ一つ点検された確実な範囲に上限をつけたものです。

また、丁寧な実例とともに新しい整数を作る規則が説明してあります。これは、数列の漸化式との関連を指摘されることを想定したものではないかと思われます。

他にも出題者側には様々な事情があると思われますが、いずれにしても、これらの事情は解答する側には関係がありません。数学の問題を解くときは、問題を漏らさずに読むことが常識ですが、現実に関わりの深い主題などでは、こうした出題者側の都合による「ノイズ」としての情報が混入しやすくなります。

それらをINT関数で処理するようにうまく切り落として、解答に必要な条件だけに直接迫ることができれば、数列とベクトルを解答しない選択も十分現実的になります。今年度の問題セットはその好例です。


バックドアを開け

最後にセンター対策の未公開コンテンツの中からブログの笑い話のようなものを転載してみます。

スピードトレーニングをしたからといって、誰もが満点を確実にねらえる位置に着けるわけではありません。

空欄に当てはまる正解が求められないときには、次の三つの対応があります。

  • 空欄をマークしないでおく
  • 空欄の形に当てはまる整数を適当にマークする
  • 空欄を確定、または限定できるもう一つの方法を探る

具体例で考えてみましょう。本年の数2・数Bのベクトルの第四問の最後の空欄です。

計算すると,
のとき,直線

正解が分からなければ得点はいらないという考え方は潔いですが、ここでは得点の期待値を大きくする点から考えてみましょう。

間違ったときに減点されるシステムがないときは、マークしないよりも、適当にでもマークすることの方が有利であることは、数学の選択者であれば理解できるはずです。さらにこの教科では、工夫次第でその正解の確率を自分で高めることができます。

常識的な判断をするだけで、空欄に入る数字は一桁の自然数だと分かり、そこから適当にマークすれば、得点の分のは期待値として得られることになります。

平方根の中に平方数が入るような出題がされることは考えられないので、,,さらにを除けば、得点の確率は分のまで上昇します。この確率は小さくありません。

かつては※印を使うことで、適当なマークで得点する確率を下げる工夫がされていました。これは痛烈な批判を浴びて廃止されました。窮地に立たされた出題側はこの制約を逆手にとって、空欄の形を工夫することで得点分布を整形するために使うことにしたのです。

問題の図では直角三角形の形は変わらず、底面の長方形の辺の一つの長さが変化するだけです。与えられた図形の左端の二等辺三角形を見てください。

桃色の三角形  の成立条件から  の長さはよりも小さいことが分かります。これで選択枝は二つに絞られ、確率は分のになりました。

さらに、四角錐がペッタンコになるまで  を広げて真上から見ます。

水色の正三角形に注目するか、少し計算することで  の取りうる範囲が分かります。


空欄が確定しました。

そもそも四角錐ができる範囲には、空欄の形を満たす値は一つしか存在しなかったわけです。驚きます。

当然のことながら、出題者がこのことを承知していないとは考えられません。解決には問題文中の内分比を少し換えれば十分でした。例えば、  の内分比を  から  に変えるだけで、空欄の数や難易度をほとんど変化させずにこの欠陥を解消できたのです。

しかし、それは行われませんでした。なぜでしょうか?

変更すると微妙に計算量に影響し、平均以下の受験生の得点を下げてしまうことが理由の一つです。最大の理由は、自分の解答が空欄に当てはまるかどうかを点検することにより、計算間違いをした際に見直しの機会を与え、正解にたどり着いた平均付近の受験生に安心を与えるためです。

膨大な受験者を抱えて、合否の決定を越えた使命を課せられたセンター試験の特性が垣間見えます。得点分布を「自然な」山の形に整えることが出題側の最重要テーマなのです。

結果的に、上のような考察ができるならばベクトルの内積計算をしなくても得点を与えるという多面性のある問題になっています。

正面から解けないときには、少し見方を変えてやると意外に正解に迫るルートが見つかる場合が少なくありません。倶楽部ではこのように、出題者都合によってガードの下がった部分につけ込む着眼を「バックドア」と呼んでいます。公開の場に適した話題ではありませんが、時間を余して試験中に行き詰まったら、裏口を探してみると得点の期待値を上げることができます。

ところで、失点しやすい問題は図形がからんでいることが多いと思いませんか?。数1・数Aの第三問の後半は平面図形を含み、得点分布の右端を整形するために使われています。満点でない場合はほとんどここで失点しているはずです。幾何のテーマは受験生を振り落とすには便利な目の粗いふるいなのです。これを使わない手はありません。

前半は三角比の定理を適用する見通しの良い典型的な設問です。後半はときには本格的な幾何を含んだ全く別の設問に切り替わります。同じ設定から引き継がれるため、それに対応できない標準的な受験生の多くがこの急カーブに耐えきれずにコースアウトするように設計されています。

図形の計量問題が正攻法で解けないときは、実測します。記述式のテストでは採点者に最悪の印象を与えますが、マークシート用紙にはそれを判別する情報が残りません。実測にはものさしと分度器が必要なので文房具で代用します。

ものさしは、鉛筆に等間隔に控えめに浅いくぼみを入れて作ります。分度器は新品の消しゴムの角から直角二等辺三角形を正確に切り取って作ります。もう一つの直角三角形は、隠れている部分を押し出して切り取ります。

鉛筆は目盛りの間隔を何パターンか作り、 と  と  用の消しゴムも用意すると、フルセットの完全装備になります。

誤解しないでください。鉛筆のくぼみはペンケースの中で自然についたものです。消しゴムは細部を消しやすくするための工夫です。試験中に机の上にある文具を使って作図することは許容される範囲内の行為です。

代表的な平方根の近似値を覚えておき、計算用紙のサイズに合わせて拡大・縮小して問題の図形をできるだけ正確に書く練習をします。直感を磨き、空欄の形を手かがりに正解の確率を上げる点で効果があります。

自分で試してみれば、本年の問題などの円を含むものには通用しないという判断になるでしょう。しかしそれは間違いです。そろばんや計算尺と同じで、使いこなせていないだけです。

不謹慎な内容になったかもしれません※注4。教える側からは一蹴されるでしょう。受験生の側からはどうでしょうか。求められない空欄の得点の確率を潔くINT関数で処理してマークしないでおくか、適当にマークするか、小数点以下をできるだけ大きくする労力を価値があるものとみなして工夫するか。三つの対応があります。

※注4不愉快な気分になられた方にはお詫びしまが、このサイトは全体的に「オルタナティブ」ですのでご注意下さい。

三つ目の対応は道徳面からどうしても自制を感じてしまうものです。出題者がそこまで見越して計算内に入れているからこそ、こうした問題は得点に変異が見られない限り、これからも出題され続けるものと思われます。


問題と解答の転写・複写・再配布

PDFファイルの転写・複写・再配布は自由です。

学校や学習塾などでのセンター対策授業、練習課題などとして利用できますが、使用の結果の責任については負いかねますので予めご了承下さい。

メッセージは左下隅のリンクから、議論は右上隅のフォーラム内のスレッドでお願いします。

ホーム

センター数学酷似試験