PHPとExcelのワークシート関数を使って小数点の演算を行い、
両者が正しい値を返しているかを比較しているのですが、
どうしても計算が合いません。
例えば、次のような計算です(小数点は少数点以下第4位まで
に統一されています)。
0.0034×0.2313×1.7423=??
PHPとExcelのそれぞれにおいて、小数点以下の計算に限界が
あるのは、理解しました。
ということは、PHPとExcelで上記のような計算を正しく同じ値にするのは不可能なのでしょうか?
それとも、PHPとExcelのそれぞれにおいて、ROUND関数などを駆使
すれば解決可能なのでしょうか?
演算の工夫で解決できる問題なのか、そもそも不可能な問題なのか
を教えていただけたら幸いです。
No.2
- 回答日時:
どうしても精度を上げたければVBAで多倍長計算できる関数を作れば可能でしょう。
na-inet.jp/nasoft/chap04.pdf
http://www.vector.co.jp/vpack/filearea/win/prog/ …
No.3
- 回答日時:
単純に有効桁数の問題では?
32Bitの環境でしたらfloat型では有効桁数が7桁です。
これ以上の精度が必要でしたら任意精度数学関数をインストールすれば可能です。構築の方法はPHPのサイトで見つけてください。
有効桁数が10桁未満でしたら、#1さんのように整数化して計算する手法もよく使われています。
No.4
- 回答日時:
#1 について補足すると
Excel, PHP ともに最新版は、整数の和差積に関しては64bit整数で計算されます。
したがって、signed 32bit -(2の31乗)~(2の31乗-1) を考慮する必要がありません。
なので単純に10000倍して計算するとよいと回答しました。
浮動小数点計算の場合は丸め誤差が発生します。
Excelの方が精度が高くなるはずです。
ここで議論しても始まらないので、まずはやってみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 『数は実在するのか』 6 2023/06/04 15:15
- Excel(エクセル) エクセル・スプレッドシートで、一定数を超えたらゼロから再累計する方法 8 2022/05/28 03:52
- その他(IT・Webサービス) 高速処理可能な表計算ソフトについて ExcelやGoogleスプレッドシートのような表計算ソフトで、 2 2023/04/29 16:06
- 高校 有効数字計算 確定した値を含む 2 2023/01/18 06:03
- その他(趣味・アウトドア・車) EXCELの計算 3 2023/03/16 10:02
- 物理学 ベクトルと座標系につきまして 1 2022/04/03 06:23
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- その他(悩み相談・人生相談) 複数の緯度経度に囲まれた面内に点を確認できるか 1 2023/03/01 19:41
- 数学 数2Bの数列の問題です。 自分は、 まず数列 an=ar^(n-1)と置き こちらの問題の、y= の 1 2022/07/07 16:26
- 数学 数学Ⅲの関数の極限、関数の連続・不連続に関しての質問でございます。 問題集には、次の関数の〔 〕内の 5 2022/05/19 10:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3割の計算
-
10^0.2 = 1.58489319246111の計...
-
数値計算の時間の刻み幅について
-
Access クエリのビルドで合計...
-
計算ソフトでの計算精度について
-
電卓の機能の名称が分からない...
-
円周率の計算式って何ですか?
-
らせんRの計算の仕方
-
2次関数って何の仕事で必要な...
-
数学ができる貴方はどのような...
-
「再帰的」の意味を教えてください
-
電力ケーブルのインピーダンス...
-
東京ロンドン間の距離(半径・...
-
「評価する」とは?
-
3.14、、、、
-
信頼区間90%は何σ?
-
2点透視図法の直方体を正立方...
-
数学のテスト問題で実は数学が...
-
「0.5の0.874乗」ってどうやっ...
-
倍率とデシベルの計算式
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3割の計算
-
信頼区間90%は何σ?
-
減少率計算式教えて下さい
-
倍率とデシベルの計算式
-
2の128乗の計算方法
-
電力ケーブルのインピーダンス...
-
らせんRの計算の仕方
-
常用対数の求め方 log10の2は約...
-
「再帰的」の意味を教えてください
-
1.01の12乗の計算
-
1512の1/5乗
-
10^0.2 = 1.58489319246111の計...
-
電卓の機能の名称が分からない...
-
三角形の面積・・・ヘロンと座...
-
2次関数って何の仕事で必要な...
-
三角関数って
-
計算ソフトでの計算精度について
-
尺数での坪数計算
-
中3の有効数字の範囲の問題で √...
-
計算の方法を教えてください。 ...
おすすめ情報