Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,10 @@
|
|||
double e(long limit) {
|
||||
double e = 1;
|
||||
for (long term = 1; term <= limit; term++)
|
||||
e += 1d / factorial(term);
|
||||
return e;
|
||||
}
|
||||
|
||||
long factorial(long value) {
|
||||
return value == 1 ? value : value * factorial(--value);
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
import static java.math.RoundingMode.HALF_UP;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.BigInteger;
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
BigDecimal e(BigInteger limit, int scale) {
|
||||
BigDecimal e = BigDecimal.ONE.setScale(scale, HALF_UP);
|
||||
BigDecimal n;
|
||||
BigInteger term = BigInteger.ONE;
|
||||
while (term.compareTo(limit) <= 0) {
|
||||
n = new BigDecimal(String.valueOf(factorial(term)));
|
||||
e = e.add(BigDecimal.ONE.divide(n, scale, HALF_UP));
|
||||
term = term.add(BigInteger.ONE);
|
||||
}
|
||||
return e;
|
||||
}
|
||||
|
||||
BigInteger factorial(BigInteger value) {
|
||||
if (value.compareTo(BigInteger.ONE) > 0) {
|
||||
return value.multiply(factorial(value.subtract(BigInteger.ONE)));
|
||||
} else {
|
||||
return BigInteger.ONE;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
BigDecimal e = e(BigInteger.valueOf(100), 1000);
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
public class CalculateE {
|
||||
public static final double EPSILON = 1.0e-15;
|
||||
|
||||
public static void main(String[] args) {
|
||||
long fact = 1;
|
||||
double e = 2.0;
|
||||
int n = 2;
|
||||
double e0;
|
||||
do {
|
||||
e0 = e;
|
||||
fact *= n++;
|
||||
e += 1.0 / fact;
|
||||
} while (Math.abs(e - e0) >= EPSILON);
|
||||
System.out.printf("e = %.15f\n", e);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue