C'est peut-être exactement la fonction dont vous avez besoin. A répondu au CT
Il a précisément besoin d'une telle fonction, car (comme vous l'avez correctement noté) tous les nombres ne peuvent pas être représentés exactement comme des doubles, ce qui signifie que résoudre le problème sans spécifier la précision n'a pas de sens (car dans le cas général, cela conduit à des résultats absurdes).
C'est exactement ce dont il a besoin, car (comme vous l'avez noté à juste titre) tous les nombres ne peuvent pas être représentés avec précision sous la forme d'un double, ce qui signifie que résoudre le problème sans spécifier la précision n'a pas de sens (car en général, cela conduit à des résultats absurdes).
Quelles sont les options permettant de spécifier la précision sans modifier le nombre de décimales, ou comment puis-je éliminer l'inconvénient décrit dans ma version ? Pour ma part, je n'ai trouvé qu'une (string)valeur
Quelles sont les options permettant de spécifier la précision sans modifier le nombre de décimales, ou comment puis-je éliminer l'inconvénient décrit dans ma version ? Pour ma part, je n'ai trouvé qu'une (string)valeur
Je suppose que vous voulez dire dans quelles limites chercher le dernier non-zéro.
essayé de faire un calcul du nombre de chiffres après la virgule à travers MathMod() avec un diviseur consécutif 0,1 , puis 0,01 ... 0,000(15 zéros) 1, il n'a pas fonctionné, la précision du nombre continue "flottant" besoin de normaliser à chaque fois, et si vous utilisez la normalisation, alors il est plus facile de comparer le nombre désiré et normalisé à quel signe - si différent, alors trouvé le dernier signe
HH : il y a une autre option, je n'ai pas eu le temps de vérifier - multiplier un nombre réel sans partie entière de 10 ^ 16 et sauvegarder le tout en long, puis diviser par 10 et vérifier le reste de la division, si = 0, alors diviser à nouveau.
ZS : il y a une autre option, je n'ai pas eu le temps de vérifier - multiplier un nombre réel sans partie entière par 10^16 et sauvegarder le tout dans un long, puis diviser par 10 et vérifier le reste de la division, si = 0, alors diviser à nouveau.
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
Vous avez besoin d'un
de sorte que
le résultat était : 4
Exactement quatre ? C'est parti.
C'est peut-être exactement la fonction dont vous avez besoin. A répondu au CT
Il a précisément besoin d'une telle fonction, car (comme vous l'avez correctement noté) tous les nombres ne peuvent pas être représentés exactement comme des doubles, ce qui signifie que résoudre le problème sans spécifier la précision n'a pas de sens (car dans le cas général, cela conduit à des résultats absurdes).
C'est exactement ce dont il a besoin, car (comme vous l'avez noté à juste titre) tous les nombres ne peuvent pas être représentés avec précision sous la forme d'un double, ce qui signifie que résoudre le problème sans spécifier la précision n'a pas de sens (car en général, cela conduit à des résultats absurdes).
Quelles sont les options permettant de spécifier la précision sans modifier le nombre de décimales, ou comment puis-je éliminer l'inconvénient décrit dans ma version ? Pour ma part, je n'ai trouvé qu'une (string)valeur
Quelles sont les options permettant de spécifier la précision sans modifier le nombre de décimales, ou comment puis-je éliminer l'inconvénient décrit dans ma version ? Pour ma part, je n'ai trouvé qu'une (string)valeur
Je suppose que vous voulez dire dans quelles limites chercher le dernier non-zéro.
essayé de faire un calcul du nombre de chiffres après la virgule à travers MathMod() avec un diviseur consécutif 0,1 , puis 0,01 ... 0,000(15 zéros) 1, il n'a pas fonctionné, la précision du nombre continue "flottant" besoin de normaliser à chaque fois, et si vous utilisez la normalisation, alors il est plus facile de comparer le nombre désiré et normalisé à quel signe - si différent, alors trouvé le dernier signe
HH : il y a une autre option, je n'ai pas eu le temps de vérifier - multiplier un nombre réel sans partie entière de 10 ^ 16 et sauvegarder le tout en long, puis diviser par 10 et vérifier le reste de la division, si = 0, alors diviser à nouveau.
ZS : il y a une autre option, je n'ai pas eu le temps de vérifier - multiplier un nombre réel sans partie entière par 10^16 et sauvegarder le tout dans un long, puis diviser par 10 et vérifier le reste de la division, si = 0, alors diviser à nouveau.
Ça ne marchera pas.
Utiliser ledoublePoint()
Également testé, pas moyen.
C'est tout.
Il donne ce résultat
Devinez trois fois ce qu'est le logarithme...Également testé, il ne fonctionne pas.