Java 使用五位小数设置双精度格式
我需要创建一个Java程序来求序列S=1+1的和/x+2/x2+…+N/xN 我的代码在求和时工作正常,但他们希望我的结果输出为五位小数(结果-2.75为2.75000)。对于大于5位小数的结果,我使用了小数格式。但是如何用两个小数点打印结果——用五个小数点Java 使用五位小数设置双精度格式,java,loops,double,decimal,decimalformat,Java,Loops,Double,Decimal,Decimalformat,我需要创建一个Java程序来求序列S=1+1的和/x+2/x2+…+N/xN 我的代码在求和时工作正常,但他们希望我的结果输出为五位小数(结果-2.75为2.75000)。对于大于5位小数的结果,我使用了小数格式。但是如何用两个小数点打印结果——用五个小数点 import java.text.DecimalFormat; import java.util.Scanner; public class Calculate { public static void main(String[
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);
}
}
导入java.text.DecimalFormat;
导入java.util.Scanner;
公共类计算{
公共静态void main(字符串[]args){
DecimalFormat df=新的DecimalFormat(“#.#######”);
扫描仪=新的扫描仪(System.in);
double n=scanner.nextDouble();
double x=scanner.nextDouble();
双因子=1;
双功率=1;
双S=0;
双重结果;
对于(int i=1;i只需使用以下格式:
DecimalFormat df = new DecimalFormat("0.00000");
只需使用以下格式:
DecimalFormat df = new DecimalFormat("0.00000");
我尝试了一些组合,如“双精度大于两个小数”,“双精度大于五个小数”结束等,但我不知道填充零…对不起:)我尝试了一些组合,如“双精度大于两个小数”,“双精度大于五个小数”结束等,但我不知道填充零…对不起:)