• ベストアンサー

計算結果の違いの理由はなんですか

割り算掛け算を含めた2つの計算式で結果の相違がおきるのはなぜですか。 下記の数式の結果は、異なるのですが、なぜでしょうか。 (1)round(trunc(a*b)*(1/12),0) (2)round(trunc(a*b)*1/12,0)またはround(trunc(a*b)/12,0) 詳細としては、1ヶ月あたりの減価償却費を計算する際に、 round(trunc(期首簿価*償却率)*(1/12),0) という計算結果と、 round(trunc(期首簿価*償却率)*1/12,0)またはround(trunc(期首簿価*償却率)/12,0) では回答が1円ずれが生じます。 なぜでしょうか。 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.5

訂正。 計算結果が6646.5になるわけですね。丸めると繰り上がって6647になります。 これが計算誤差で 6646.49999999999999999999999999999 になると、四捨五入の結果が6646になって 1 違う結果となります。 これはどうしようもないので、計算式を書くときは *(1/12)のような書き方をしないように注意するといった手段しかないかもしれません。 どっちにしても、ORACLEなどデータベースでのお金の計算に詳しい人がいるカテゴリにあらためて質問を出すのがいいとおもいます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.4

そういうことでしたら、ORACLEの専門家に相談した方がいいです。数学のカテゴリではなく。 おそらく、REAL精度で計算されてしまってるのではないかと思います。 データ型としてNUMBERを使うようにしたら、誤差が小数点以下になってroundで隠れるのではないかと。

hermesmayu
質問者

お礼

ありがとうございます! なるほど。 オラクルに聞いたほうがいいですかね。。。 データの型の問題もあるんですね・・・。 早速メタリンクにでも問い合わせてみます! ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.3

そもそもどういうコンピュータのどういうソフトで計算していますか? 科学技術計算用のソフトでお金を計算させるとこの手のトラブルが起きることがあります。たとえば、倍精度浮動小数点だと15桁くらいしか有効数字がないので、億単位のお金の利子などで銭の桁まで計算させようとすると、正しい結果が出ないとか。 極端な話、C言語でtrunc(a*b)*(1/12) を計算させると、常に答えが0になります。

hermesmayu
質問者

補足

ありがとうございます。 たとえば、オラクルのオブジェクトブラウザをつかって、実行しました。 下記SQLです。 SELECT 66558 * (1 / 12) ,66558 / 12 FROM DUAL; 回答が2種類でてきます。。。

全文を見る
すると、全ての回答が全文表示されます。
  • yyfront
  • ベストアンサー率26% (140/525)
回答No.2

1/12を掛けるのと 12で割るのでは、エクセルでは違う計算になると思います。 割り切れない数字をかけるのは どこかで省略が行われ良くないと思います。

hermesmayu
質問者

お礼

ありがとうございます。 そうなんですよね・・・・。 でも経理の仕事で使いたいので、エクセル計算が必須だったりします 端数になる部分を四捨五入するか、切り捨てるかで1円のずれが経理上発生してしまうんです。。。

全文を見る
すると、全ての回答が全文表示されます。
  • pasocom
  • ベストアンサー率41% (3584/8637)
回答No.1

(期首簿価*償却率)*(1/12) の計算ではまず(1/12)が先に計算され、0.083333・・・という数字になります。この数字がどこかの位で切り捨てられるのではないでしょうか。その結果求められた数字が1円小さくなる。 これに対して(期首簿価*償却率)/12 では、前半のかけ算のあと12で割る、という順序になり、割った数字がROUNDで繰り上がり、1円多くなる。 という推測です。

hermesmayu
質問者

お礼

ありがとうございます。 切り捨てられるんでしょうか・・・。 でもそうでもない限り、この誤差はおき得ないですよね。 オラクルの計算は、(1/12)なんです。 でも私の計算は、/12で行ったため、1円のずれが生じました・・・。 1円多く税金を払っていたことになります。。。 正しいのはどちらなのでしょうかね。。。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 耐用年数の修正

    法人で、減価償却資産の耐用年数を誤って、今まで償却してきました(定率法)。 例)法定耐用年数10年のものを耐用年数20年で計算してきた。その資産は取得からすでに15年ぐらい経過している。 当期からいきなり正しい耐用年数10年で計算してもよいのでしょうか?(期首簿価×償却率) 税務上、問題はありますか? 正しい期首簿価(最初から正しい耐用年数で償却してきたらなるであるはずの期首簿価)を計算してそれを基礎にするべきなんでしょうか?そうだとすると、耐用年数10年はすでに過ぎているので、償却できないってことになってしまいますが、どうなのでしょう。 (「正しい期首簿価」と「実際の期首簿価」の差額は過年度損益修正損→税務上は損金不算入(減価償却超過額))

  • 一部除却したあとで、月別償却費どう計算しますか

    基本情報: (1)取得価額:41503940円 (2)取得年月日:19740201 (3)耐用年数:47 (4)償却率:0.048 (5)償却方法:定率法 (6)期首簿価:6813143円 (7)期首償却累計額:34690797円 もし、平成15年5月31日に簿価は6000000円になった場合、 月別償却費はどう計算しますか?

  • 弥生会計|固定資産一覧の見方

    弥生会計の07スタンダードVer.を使わされる状況になりました。 「拡張機能」から「固定資産一覧」を見ると 「償却費」を計算しているにもかかわらず 「期首簿価」と「期末簿価」の値が同です。 経験的には、償却費の分だけ「期末簿価」が減ると思うのですが なんで同じなのかわかりません。 当然「減価償却累計額」も計算されています。 減価償却の方法は、間接法です。 よろしくお願いします。

  • 減価償却

    3月決算の法人なんですが、10月31日をもって解散した場合の減価償却の金額なんですが次のとおりでいいのでしょうか?車輌運搬具1,000,000の期首簿価で償却率0.319 14.4.1~14.10.31の場合(~解散まで) 1,000,000*0.319*7/12=186,083(減価償却費) 14.11.1~15.3.31の場合(解散から~決算) 813,917*0.319*5/12=108,183(減価償却費) 15.4.1~16.3.31の場合(清算中) 705,734*0.319=225,129(減価償却費) の計算でいいのでしょうか?固定資産台帳の件で悩んでますので教えてください!

  • 日商簿記2級の仕訳問題について教えてください。

    <仕訳問題> A商事は平成×0年4月1日に購入した備品を当期末(平成4年3月31日)に除却し、処分時まで一時倉庫に保管することとした。なお、この備品の処分可能価値は¥40000と見積もられた。 当該資産の当期首(平成3年4月1日)の簿価は¥102400であり、当該資産は定率法(償却率20%)により償却され、直接法で記帳されている。当期分の減価償却費の計上もあわせて行うこと。 <答え> 減価償却費     20,480    備品 102,400 貯蔵品        40,000 固定資産除却損  41,920 私の考えた答えは下記です。 減価償却費     20,480    備品 81,920 貯蔵品        40,000 固定資産除却損  21,440 除却時に当期分の減価償却費を直接法で計上して、 当期首の備品簿価¥102,400から減価償却費¥20,480を引いた¥81,920が期末の備品簿価だと思ったのですが、正しい答えが理解できません。 ¥102,400というのは当期末の簿価という意味ではなく、期末の簿価と減価償却費の計上仕訳を合わせたものなのでしょうか? どなたか教えてください。 宜しくお願いします。

  • 減価償却の計算方法

    減価償却制度が改正されましたが、計算方法がよく分かっておりません。 今までExcelに計算式が入っており、前期の期末簿価を入れれば計算ができるようになっていました。 下記はひとつの数字の例です。 建物所得価格10,500,000円、取得年月:昭和60年10月、残存価格525,000円(取得価格の5%)、期首簿価4,000,000円、という数字があったとします。 また、従来定率方だったものを今期より定額法に改めることとなりました。 この場合、今期の減価償却限度額は 10,500,000*90%*0.200=1,890,000円と考えてよろしいのでしょうか。

  • 計算の順序 a×b÷c

    小学生の算数で, たし算,ひき算は,かけ算,わり算より先 たし算と,ひき算が,又は,かけ算,わり算が, 複数ある時は,普通,左からと習います。 しかし, たし算だけ, かけ算だけなら,どこからでも計算できます。 a×b÷c は,b÷cを先に計算することは,できますか? いくつか,問題を作って解いてみましたが, a×bを先に計算した時と,答えが同じになりました。 よろしくお願いします。

  • エクセルでこんなことできますか(減価償却計算)

    エクセルで減価償却計算の式を組んでいますが下記のようなことはできますか。  減価率  金額  0.85    111,111 例えば3年間減価償却した場合 111,111*0.85=94,444 (切捨て) 94,444*0.85=80,277 (切捨て) 80,277*0.85=68,235 (切捨て) このように計算したいのです。もちろん列に式を入力していけば計算できます。   A      B       C 1 111,111  =INT(A1*A2) =INT(B1*A2)・・・ 2 0.85 ただ年数が10年20年となると大変ですし容量も大きくなります。累乗関数のPOWERを使えればいいのですが 例えば=POWER(0.85,3)*111,111とすると四捨五入の関係で68,236になります。切捨てで計算したいんです。よろしくおねがいします。 (減価償却の計算式が違っている等の指摘はご勘弁ください。あくまで上記の計算方法で式を組みたいんです。)

  • 法人合併に伴う減価償却費の計算方法

    法人合併に伴う減価償却費の計算方法 合併は適格合併。 事業年度は、共に4月1日~3月31日 合併期日 10月1日 定率法による減価償却を採用。 上記のような合併の場合、被合併法人の合併直前の帳簿価額で引継がれますが、 10月1日以降の合併法人の定率償却計算の基礎となる帳簿価格は被合併法人の 期首簿価となるのか、それても合併時簿価を以って計算するのか御教授願います。 また、その根拠となる条文等もご存知でしたら御指示願います。

  • 減価償却について

    初歩的な質問ですがよろしくお願いします。 期首簿価が残存価格より下回った場合は減価償却はせず期末簿価にそのまま載せておくのでしょうか?