Je voudrais calculer (1.0-p)^n
où p est un double entre 0 et 1 (souvent très proche de 0) et n est un entier positif qui pourrait être de l'ordre de centaines ou de milliers (peut-être plus grand, je ne suis pas encore sûr). Si possible, j'adorerais simplement utiliser Java java.lang.Math.pow(1.0-p, n)
pour cela, mais je suis légèrement préoccupé par le fait qu'il pourrait y avoir une énorme perte de précision/exactitude en faisant cela avec la gamme de valeurs qui m'intéresse. une idée approximative du genre d'erreur que je pourrais m'attendre en utilisant l'implémentation de Java? Je ne suis pas sûr de ce qui se passe sous le capot dans leur implémentation (logs et/ou approximations de Taylor?), Donc je ne peux pas hasarder une bonne estimation.Quelle est la précision/précision de java.lang.Math.pow (x, n) pour un grand n?
Je suis surtout préoccupé par l'erreur relative (c'est-à-dire que je ne sois pas éteint de plus d'un ordre de grandeur). Si la réponse s'avère être que l'implémentation de Java produira trop d'erreurs, avez-vous de bonnes recommandations de bibliothèque (mais encore une fois, j'espère que cela ne devrait pas être nécessaire)? Merci.
J'ai effectivement vérifié le Javadoc et pourtant j'ai raté cette ligne, merci. Quant à 'BigDecimal', je l'avais écarté avant de réaliser que' n' était un entier. Je pense que cela fonctionnerait aussi. –