• 締切済み

有効数字

import java.lang.Math; public class NewtonMethod { public static void main(String args[]){ double x = 0.785; while (true){ double x2 = x * 2; double xN = x - (Math.cos(x2) - x2 + 1)/(- 2 * Math.sin(x2) - 2); if (xN >= x){ break; } x = xN; } System.out.println(x); } } このソースコードの求められたxを有効数字6桁で求めたいのですがどうすればいいのでしょうか? BigDecimal bi = new BigDecimal(String.valueOf(x)); x =bi.setScale(5,BigDecimal.ROUND_HALF_UP).doubleValue(); というのをどこかに入れればいいというところまではわかりましたが、さっきから実行してもうまくいきません; どなたか助けてください。よろしくお願いします。

みんなの回答

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

どう上手くいかないのでしょうか? 具体的におっしゃってください。 ちなみにそのコードを差し込んでも 「有効数字6桁」 は作れません。 あくまで 「小数点以下6位で四捨五入」 しているに過ぎません。

関連するQ&A