- - PR -
計算メソッドについてpow
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-09-05 12:25
べき乗の計算方法がわかりません。アドバイスを頂けるとありがたいです。よろしくお願いします。
pt=288 pm=100000 ra=0.003 //分母 BigDecimal bunbo = ra.multiply(new BigDecimal(Math.pow(BigDecimal.valueOf(1).add(ra).doubleValue(), pt.doubleValue()))); //分子 BigDecimal bunshi = new BigDecimal(Math.pow(BigDecimal.valueOf(1).add(ra).doubleValue(), pt.doubleValue())); bunshi=bunshi.subtract(BigDecimal.ValueOf(1)); BigDecimal bo = pm.multiply((bunshi).divide(bunbo.BigDecimal.ROUND_HALF_UP)); br = br.divide(BigDecimal.valueOf(100000),0,BigDecimal.ROUND_DOWN); br = br.multiply(BigDecimal.valueOf(100000); return br; 計算結果がaの7.4乗(例)などのように指数に小数点がきてしまったりします。 計算方法に間違えがあるのだと思いますが、上記の式で実際にどのように数値が得られるのか お手数ですが計算式ごとに教えて頂けないでしょうか。 よろしくお願いします。 | ||||
|
投稿日時: 2006-09-05 12:33
電卓で計算 および java "べき乗" で検索 | ||||
|
投稿日時: 2006-09-05 13:13
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/Math.html#pow(double, double)
使い方がよくわからないのであれば、一度にごちゃごちゃと処理せずに Math.pow単体で動作をみましょう。 根本的な突っ込みとして http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/math/BigDecimal.html#pow(int) こちらを使うべきじゃないか、というのはありますが。
と一気にいろいろと計算していますが、計算の途中結果は合っていますか? 一行にまとめずに中間結果を確認しながら組むとよいですよ。 過程ごとにデバッグすればすぐに何が悪いのかわかるものです。 |
1