java - 将 double 格式设置为五位小数

标签 java loops double decimal decimalformat

我需要创建 Java 程序来查找系列 S = 1 + 1!/x + 2!/x2 + … + N!/xN 的总和。

我的代码可以正确计算总和,但他们希望我的结果输出具有五位小数(结果 - 2.75 为 2.75000)。我使用 DecimalFormat 来处理超过五位小数的结果,并且它有效。但是如何打印带有两位小数的结果 - 带有五位小数的结果?

import java.text.DecimalFormat;
import java.util.Scanner;

public class Calculate {

    public static void main(String[] args) {
        DecimalFormat df = new DecimalFormat("#.#####"); 
        Scanner scanner = new Scanner(System.in);
        double n = scanner.nextDouble();
        double x = scanner.nextDouble();
        double factorial = 1;
        double pow = 1;
        double S = 0;
        double result;

        for (int i = 1; i <= n; i++) {
            factorial *= i;
            pow *= x; 
            result = (factorial / pow);
            S += result;
        }

        double finalResult = (S + 1); 
        String formatted = df.format(finalResult); 
        System.out.println(formatted); 
    }
}

最佳答案

只需使用此格式:

DecimalFormat df = new DecimalFormat("0.00000");

关于java - 将 double 格式设置为五位小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52664764/

相关文章:

java - 如何在java中打乱二维数组

java - TreeMap.containsKey() 中的 Werid ClassCastException

c++ - 混淆 while(cin >> x && x != 0) (当 int x = 0 时)与 while(x != 0 && cin >> x ) (当 int x = 1 时)

java - 迭代所有可用的 Ant 属性

OPENCV:IplImage* 可以保持双重值(value)吗???

java - BigDecimal 数据类型与 Double

java - 此测试值会在系统中造成感染吗?

java - 需要来自浏览器 DOM 的相当于 "scrollIntoView"的 Java Swing

java - 并行化此Java代码的最佳方法

Apache rewriterule 将文件夹重定向到子文件夹而无需循环