基本情報技術者試験午前の対策(コツ2)
次は、高校の数学や大学1年に習ったことを復習しておきましょう。だいだい10題くらい出るから、ここでは確実に点数を稼いでおきます。
勉強の仕方は、新しいことを覚えるのではなくて復習ですから、過去問をやっておけば思い出せるので心配しないでください。問題を解いてみて難しくないなという感覚をつかんでおいてください。
(1)確率
順列組み合わせや確率といった高校の数学の問題が3題程度でます。
それほど難しくないので、思い出して解いてみてください。
何題か過去問を解いておけば、思い出すでしょう。
【例】 2008年秋 問6
0~9 の数字と空白文字を組み合わせて長さ3の文字列を作る。先頭1文字には数字を使えるが,空白文字は使えない。2文字目以降には空白文字も使えるが,空白文 字の後に数字を並べることは許されない。何通りの文字列を作ることができるか。ここで,同じ数字の繰返し使用を許すものとする。
ア 1110
イ 1111
ウ 1210
エ 1331
3つの文字列ということですので
① 987
② 98_
③ 9__
こういう形がいくつあるかという事ですね。
① 10×10×10=1000
② 10×10=100
③ 10
①+②+③=1110
答えはアです。
(2)2進数
押さえておくのは「基数と基数変換」「補数」「論理シフト、演算」「文字の表現」の4つぐらいですね。これは大学1年の時に習いましたね。
(1)基数と基数変換
10進数を2進数に変換したりする問題です。
(2)補数
マイナスの数字を表す時に2の補数を使う問題です。
(3)論理シフト、演算
2進数を右や左にずらすと数字がどう変わるかという問題です。
(4)文字の表現
文字を0と1のビットの組み合わせで表すには何ビット必要かというような問題です。
やったことありますよね。これも過去問を難題か解けば思い出しますね。
【例】 2008年秋 問3
2の補数で表された負数 10101110 の絶対値はどれか。
ア 01010000
イ 01010001
ウ 01010010
エ 01010011
この問題は、10進数で考えると例えば-2の絶対値は何かということです。2ですよね。
つまり、2進数のある数の補数を求めなさいという問題です。
2の補数の求め方は、ビットを反転させて1を足すのでしたよね。
10101110 ビット反転 01010001
1を足す 01010010
答えはウですね。
(3)論理演算
ANDとかORとかドモルガンの法則とかそういった問題です。高校の数学程度でしょうか。大学1年の時もやりましたね。
これも過去問を何題か解いておけば思い出しますよ。
【例】 2008年秋 問10
次の真理値表の演算結果を表す論理式はどれか。ここで,+は論理和,・は論理積を表す。
x y z 演算結果
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
ア ( x ・ y )+ z
イ ( x + y )・ z
ウ x ・( y + z )
エ x +( y ・ z )
これも1個1個当てはめるしかないように思えますが、そんなことやっていたら時間がありません。
消去法で考えて行きます。
ア、イではZに注目します。Zが1なのに結果が0になるというのはAND条件ではだめです。
したがってアは誤り
ウ、エではXに着目します。Xが1なのに結果が0になるものがあるということは、OR条件ではありまえん。
したがってエは誤り
イを計算してみましょう
x y x+y z 演算結果
0 0 0 0 0
0 0 0 1 0
0 1 1 0 0
0 1 1 1 1
1 0 1 0 0
1 0 1 1 1
1 1 1 0 0
1 1 1 1 1
これではなさそうですね。従って答えはウです。ウが正しいかは全部終わってから検算しましょう。
(1)確率
順列組み合わせや確率といった高校の数学の問題が3題程度でます。
それほど難しくないので、思い出して解いてみてください。
何題か過去問を解いておけば、思い出すでしょう。
【例】 2008年秋 問6
0~9 の数字と空白文字を組み合わせて長さ3の文字列を作る。先頭1文字には数字を使えるが,空白文字は使えない。2文字目以降には空白文字も使えるが,空白文 字の後に数字を並べることは許されない。何通りの文字列を作ることができるか。ここで,同じ数字の繰返し使用を許すものとする。
ア 1110
イ 1111
ウ 1210
エ 1331
3つの文字列ということですので
① 987
② 98_
③ 9__
こういう形がいくつあるかという事ですね。
① 10×10×10=1000
② 10×10=100
③ 10
①+②+③=1110
答えはアです。
(2)2進数
押さえておくのは「基数と基数変換」「補数」「論理シフト、演算」「文字の表現」の4つぐらいですね。これは大学1年の時に習いましたね。
(1)基数と基数変換
10進数を2進数に変換したりする問題です。
(2)補数
マイナスの数字を表す時に2の補数を使う問題です。
(3)論理シフト、演算
2進数を右や左にずらすと数字がどう変わるかという問題です。
(4)文字の表現
文字を0と1のビットの組み合わせで表すには何ビット必要かというような問題です。
やったことありますよね。これも過去問を難題か解けば思い出しますね。
【例】 2008年秋 問3
2の補数で表された負数 10101110 の絶対値はどれか。
ア 01010000
イ 01010001
ウ 01010010
エ 01010011
この問題は、10進数で考えると例えば-2の絶対値は何かということです。2ですよね。
つまり、2進数のある数の補数を求めなさいという問題です。
2の補数の求め方は、ビットを反転させて1を足すのでしたよね。
10101110 ビット反転 01010001
1を足す 01010010
答えはウですね。
(3)論理演算
ANDとかORとかドモルガンの法則とかそういった問題です。高校の数学程度でしょうか。大学1年の時もやりましたね。
これも過去問を何題か解いておけば思い出しますよ。
【例】 2008年秋 問10
次の真理値表の演算結果を表す論理式はどれか。ここで,+は論理和,・は論理積を表す。
x y z 演算結果
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
ア ( x ・ y )+ z
イ ( x + y )・ z
ウ x ・( y + z )
エ x +( y ・ z )
これも1個1個当てはめるしかないように思えますが、そんなことやっていたら時間がありません。
消去法で考えて行きます。
ア、イではZに注目します。Zが1なのに結果が0になるというのはAND条件ではだめです。
したがってアは誤り
ウ、エではXに着目します。Xが1なのに結果が0になるものがあるということは、OR条件ではありまえん。
したがってエは誤り
イを計算してみましょう
x y x+y z 演算結果
0 0 0 0 0
0 0 0 1 0
0 1 1 0 0
0 1 1 1 1
1 0 1 0 0
1 0 1 1 1
1 1 1 0 0
1 1 1 1 1
これではなさそうですね。従って答えはウです。ウが正しいかは全部終わってから検算しましょう。