掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.27622

7桁同士の乗算
投稿者---ルイ(2006/07/11 20:15:43)


7桁同士の乗算を求めるプログラムを作ろうとしています。
下9桁まではなんとか求めることができたのですが、それ以上求めることができません。
どうすれば10桁以上も計算できるのでしょうか?
ちなみに整数型以外の変数を使わないという条件でです。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:7桁同士の乗算 27623 ruby 2006/07/11 20:29:53
<子記事> Re:7桁同士の乗算 27624 Mook 2006/07/11 20:47:34
<子記事> Re:7桁同士の乗算 27626 ルイ 2006/07/11 21:07:43


No.27623

Re:7桁同士の乗算
投稿者---ruby(2006/07/11 20:29:53)


桁あふれしているのでしょう。

4桁とか5桁とか、適当な桁数ごとに区切って計算すれば、
うまくいくでしょう。


この投稿にコメントする

削除パスワード

No.27624

Re:7桁同士の乗算
投稿者---Mook(2006/07/11 20:47:34)


7桁の乗算ということは14桁まで扱える必要がありますが、それには変数として6バイト必要です。
long long(8バイト整数)に対応したコンパイラなら、変数型を変えることでも、実現可能ですが、そうでなければ long 型では計算できません。
なくdouble で計算すれば良いと思います。

表示として、小数点を出したくないということであれば、
printf("%.0lf\n", 99999999.0 * 9999999.0 );
のようにすれば、良いのではないでしょうか。

ちなみに double の有効桁数に関しては、下記が参考になると思います。
http://www2.realint.com/cgi-bin/tarticles.cgi?pointc+27573


この投稿にコメントする

削除パスワード

No.27626

Re:7桁同士の乗算
投稿者---ルイ(2006/07/11 21:07:43)


返信ありがとうございます!
桁区切りでやってみます!
またわからない事あったらお願いします!


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧