n e
- -----------
0 1
1 2
2 2.5
3 2.666666667
4 2.708333333
5 2.716666667
6 2.718055556
7 2.718253968
8 2.718278770
9 2.718281526
🙈 自作聪明整了个 BigDecimal 一顿操作
BigDecimal dec = new BigDecimal(e).setScale(9, BigDecimal.ROUND_HALF_DOWN).stripTrailingZeros();
😡 想不到是分类讨论……
🍑 特殊处理 0 1 2 项
import java.math.BigDecimal;
public class Main
{
public static void main(String[] args)
{
System.out.println("n e");
System.out.println("- -----------");
System.out.println(0 + " " + 1);
System.out.println(1 + " " + 2);
System.out.println(2 + " " + 2.5);
double jie = 1 * 2;
double e = 2.5;
for (int i = 3; i <= 9; i++)
{
jie *= i;
e += 1 / jie;
// BigDecimal dec = new BigDecimal(e).setScale(9, BigDecimal.ROUND_HALF_DOWN).stripTrailingZeros();
System.out.printf("%d %.9f", i, e);
System.out.println();
}
}
}