Chciałbym przybliżyć wartość e do jakiejkolwiek pożądanej precyzji. Jaki jest najlepszy sposób na zrobienie tego? Najbardziej udało mi się uzyskać e = 2,7182818284590455. Dowolne przykłady modyfikacji następującego kodu będą mile widziane.Lepsze przybliżenie ei Javy
public static long fact(int x){
long prod = 1;
for(int i = 1; i <= x; i++)
prod = prod * i;
return prod;
}//fact
public static void main(String[] args) {
double e = 1;
for(int i = 1; i < 50; i++)
e = e + 1/(double)(fact(i));
System.out.print("e = " + e);
}//main
Oczywiście podwójny nigdy nie może zawierać więcej cyfr niż jego dokładność. Użyj innego rodzaju numeru. – Joren
Bardzo, co powiedział Joren. Idea "dowolnej pożądanej precyzji" jest zasadniczo niekompatybilna z obliczeniami w typie o stałej szerokości. –