mixiユーザー(id:4556571)

2014年06月25日04:09

68 view

[X68]なんというかタイムリーな[X−BASIC]

【数学】111111111×111111111=12345678987654321
http://news.mixi.jp/view_news.pl?media_id=85&from=diary&id=2937709


フォト

「やあ行き倒れだよ。いやはやこれは美しい。これはそこらの電卓じゃ計算できんよ。」


ではパソコンではというと・・・一工夫しないと計算できない
と、いうのも普通に計算させたらオーバーフローだろうし、例え浮動小数点変数を駆使したプログラムで計算させたとしても指数表示になってしまう
私の現在の腕ではこのような計算をさせるプログラムを書くのは無理だ


ただ、たまたまタイムリーなことに凄い桁数同士の足し算が出来ないかとX−BASICで研究していた最中だったので驚いた


せっかくなので・・・
試しに作っていたプログラムとは2の256乗までの計算結果を表示するプログラムである
実機で実行させた結果はこんな感じ


フォト

こんな桁数の数字初めて見たわ


ちなみにこれがプログラム
フォト



2の1024乗の数字を見たいと計算させたところ、860乗あたりであっさり255文字をオーバーしてエラーになってしまった


プログラムの仕組みとしては、数値ではなく数字として計算ルーチンに渡し、人間の筆算と同じことをさせて計算している
9+9を足すと10繰り上がって・・・というように一桁ずつシコシコと計算していく


フォト

「X68シリーズ持っている人やエミュレータ環境出来ている人は関心ありましたらやってみてくださいね。天文学的数字の計算楽しいですよ。」

0 2

コメント

mixiユーザー

ログインしてコメントを確認・投稿する

<2014年06月>
1234567
891011121314
15161718192021
22232425262728
2930     

最近の日記