共通科目情報処理(実習)、社会学類対象、1997年06月12日 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp>
このページは、次の URL にあります。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/shakai3-enshu-1997//1997-06-12
/spread-sheet-int-limit.html
あるいは、次のページから手繰っていくこともできます。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/
http://www.hlla.is.tsukuba.ac.jp/~yas/index-j.html
http://www.ipe.tsukuba.ac.jp/~yshinjo/
http://www.ipe.tsukuba.ac.jp/
「コンピュータ」というと、「間違わない」というイメージがあるかもしれせ ん。でも、簡単に間違うことがあります。ここでは、Excel で大きな数(整数) を使って、コンピュータを間違えさせてみる実験をしてみます。
Excel については、詳しくは、Excel か、 →手引き(パソコン編)[91-124]を見て下さい。
数学では、「(X + 1) - X = 1」は、成り立ちます。しかし、コンピュータで は、成り立たないことがあります。ここでは、次のようにして調べてみます。
A列
には、1,10,100,...., と数を入れる。
B列
には、それぞれA列
の内容に1を足したものを
入れる。
C列
には、それぞれB列
の内容から
A列
の内容を引いたものを入れる。
C列
には、1 が並ぶと思われます。
しかし、大きな数を入れると、そうはならなくなります。
次のように、操作してみて下さい。
A1
セルに 1
と打つ。
B1
セルに =A1+1
の結果を表示させる。
C1
セルに、=B1-A1
の結果を表示させる。
A2
セルに =A1*10
の結果を表示させる。
B2
セルに =A2+1
の結果を表示させる。
C2
セルに、=B2-A2
の結果を表示させる。
A2
から C2
をコピーする。
A3
から C20
を選択し、ペースト(張り付
け)する。
コンピュータの内部が2進数を使っていることを利用して、どのくらいの数ま できちんと間違いなく扱うことができるか調べなさい。この答えは、10進数で は、きりのよい数(1000とか100000000とか)にはならない。
それは、2進数で何桁(何ビット)になるか。
赤字国債の発行残高を Excel で計算すると、どんな楽しいことが起きるか。
ヒント:冪(累乗)を使って、2の0乗、2の1乗、2の2乗、2の乗、・・・と計
算する方法があります。Excel で、冪は、^
という記号を使っ
て、書きます。2の10乗は、=2^10です。
ヒント:上の手順で、10倍ではなく2倍してみる方法もあります。