J'utilise Visual C++ 6.0 sur Windows XP. Mon code est le suivant:C++: Problème avec une équation simple?
# include "stdio.h"
void main() {
int m,n;
double sum=0;
n=65536;
sum=1.0/(n*n);
printf("%.20lf",sum);
return;
}
La sortie de mon code est:
1.#INF0000000000000000
Pourquoi puis-je obtenir la réponse MAL? Comment puis-je calculer correctement 1/(65536*65536)
? Je m'attends à obtenir 0.00000000023283064365386962890625
.
Merci pour votre aide!
Utilisez le code – Kimtho6
Double n'est pas assez précis pour cette équation. Vous avez besoin de quelque chose de plus précis, comme un long long double. –