一種午前 平成10年春
問01〜問10 問題と解説

末広ページへ このコーナーの目次へ

 ここの内容に関しての質問を歓迎します。斎藤末広まで。当ページの内容をご利用した方は,末広ページご利用の案内を参照して下さい。

 


問01

 

解説

 

解答 ア

 


問02

解説

 

解答 

問03

解説

解答 

 


問04

 10 進数で小数点以下が 1 けたの数値を四捨五入し整数にしてから合計した値は,四捨五入しないで合計したときの値と比べて,どのような傾向を持つか。ここで、数値の個数は十分にあり、少数点以下の数字は 0 〜 9 が同じ確率で出現するものとする。

 ア 大きくなったり小さくなったりする

 イ 大きくなる

 ウ 変わらない

 エ 小さくなる

解説

四捨五入の例をあげます。

  0.0 → 0
  0.1 → 0
  0.2 → 0
  0.3 → 0
  0.4 → 0
  0.5 → 1
  0.6 → 1
  0.7 → 1
  0.8 → 1
  0.9 → 1
------------------
計 4.5 → 5

 均等に数字が発生すると,例のように小数点第一位で四捨五入すると,10 回あたり,0.5 増えます。よって,「イ 大きく」が期待された解答と思われます。

 この問題は,意地悪な味方をすると,「四捨五入しないで合計したとき」は,たいてい小数点をもつ数字になりますから,小数点付きの数字と整数を比較すれば,「ア 多くなったり少なくなったりする」が解答です。情報処理技術者試験の問題文の傾向から判断するとこのような言い回しからの判断を擁する問題はでません。よって,この味方は意地悪すぎるでしょう。

 次ぎに,ちょっと意地悪な見方すると,問題文には整数とありますが,正,負の条件がありません。正負を加味してこの問題を考えてみます。

 問題となるのは,-0.5の四捨五入です。論理的に考えると,四捨五入は,0.5を足して切り捨てですので,

-0.5 → 0

となります。しかし,数字の 5 に引きずられて, -0.5 → -1 とする人が多いです。コンピュータの世界では,作るひとによって,マイナス時の四捨五入は,どちらになるかわかりません。このところを正確に記述するためには,天井関数(ceil),床関数(floor)を使用します。この事実を知っている人は,マイナスの数字が入った,「四捨五入」は,信用できないので,「ア 大きくなったり小さくなったり」を選ぶかもしれません。しかし,この選択肢は,処理系によって,数字が違うという意味ではなくて,「計算する数字が増えた場合でも,収束しない」の意味でと思えますので,この場合は,解答群に解答がないと考えるべきでしょうね。

 ここまで,考えた人は,情報処理技術者試験なので,JISにあたろうということで,JISを調べます。JISでは,私の調べたところ,3カ所に四捨五入の説明があります。

その1 JIS X 0022にある,22.03.33 四捨五入機能
 計算結果の意図している最下位に対し、次のけたが5以上の場合は、1を加え、4以下の場合は変化を与えないような機能

 まあ,一般的な四捨五入の考えです。

その2 JIS X 0002にある,02.09.07 (1)四捨五入する
 削除する数字の最上位がその数字位置の基数の半分以上の値であるときに限り、残った数表示の部分を、その最下位の数字に1を加えて必要なけた上げを行うことにより調整して丸めること。
 例:12.637 5 と 15.062 5 という数表示は、四捨五入して小数第2位まで求めると、それぞれ 12.64 と 15.06 とになる。

 これも,一般的な四捨五入の考えで,10 進数以外の場合も想定してます。しかし例を見ても分かるようにマイナスの扱いは微妙です。

その3 02.09.08 (2)四捨五入する
 次のような場合に、残った数表示の最下位の数字に1を加えて必要なけた上げを行うことにより調整して丸めること。
  (a)削除する数字の最上位がその数字位置の基数の半分より大きい。
  (b)削除する数字の最上位がその数字位置の基数の半分に等しく、その後に続く一つ以上の数字がゼロよりも大きい。
  (c)削除する数字の最上位がその数字位置の基数の半分に等しく、その後に続くすべての数字がゼロで、かつ残った数字の最下位が奇数である。
 例:12.637 5 と 15.062 5 という数表示は、四捨五入して小数第3位まで求めると、それぞれ 12.638 と 15.062 とになる。
 注 この定義の中で、奇数の代わりに偶数が置き換わりうる。

 これは,その2の下に定義してあるものです。これにより,四捨五入を繰り返すことによる数の増加を完全ではありませんが,予防できます。では,この問題は,このJIS 02.09.08を知っているかどうかを尋ねているかですが,問題文の記述に 1 の位の条件がないところをみると,尋ねているようには思えません。

 以上,この問題は,単純に考えて,「イ 大きくなる」でしょう。マイナスの数字は考えていない,JIS 02.09.08を想定しない,整数と小数の比較を考えていないでしょう。

解答 イ

 


問05

解説

解答 

 


問06

解説

解答 

 


問07

解説

解答 

 


問08

解説

解答 

 


問09

解説

解答 

 


問10

解説

解答 

 


spage@yscon.co.jp

末広ページへ このコーナーの目次へ