Mais 17 décimales, toi qui aimes la précision, ça devrait te frustrer non ?
Je n'ai pas besoin d'une telle précision. Donc non.
Tu préfères pas cette exactitude ? Moi si.... mais qui sur 1/3 tape dans les 28 décimales....
Tu n'as pas d'exactitude puisque 1/3 avec 28 décimales c'est une approximation et pas de l'exactitude. Tu te contredis en moins de 50 mots.
toi ce que tu ne veux pas comprendre, c'est qu'un ordinateur c'est le langage qui décide comment il calcule.
Le programme soumet des calculs à un proco et fait avec ce que peut faire le proco. Au final, tu es totalement tributaire des possibilités du proco. C'est le processeur qui évalue in fine. Tes additions, multiplications etc font toutes appel à ses fonctions internes et s'appuient sur IEEE754, désolé de te décevoir.
[et là il s'interroge pourquoi 2/3 se termine par un 7] Pas si il utilise Perl.
Bah zut ! Si Perl n'affiche pas un 7 à la fin c'est qu'il est bon à mettre à la poubelle puisque s'il affiche 0.6666666666 au lieu de 0.6666666667 alors il ne donne pas la meilleure approximation décimale. Fâcheux ça.
au moins, la calculatrice elle se trompe pas
La calculatrice se trompe plus de 99% du temps comme Decimal, comme Float.
Dans certains cas exceptionnels (liés au format BCD) ça peut lui arriver d'afficher une valeur exacte, comme Decimal, comme Float.
Aucun de ces systèmes ne peut faire les 4 opérations de manière exacte ne serait-ce que sur les décimaux de [0;1]. Pas besoin d'être un scientifique extraordinaire. Ca s'explique par exemple très bien à des jeunes TS.
Bref, je trouve que ça fait tache.
Ce qui fait tâche c'est davantage de croire qu'une bonne approximation de 2/3 c'est 0.6666666666 et non 0.6666666667. Mais ça montre bien ce que je dis, tu n'as pas de conception numérique suffisamment avancée pour dire des choses sur un sujet aussi technique. C'est juste un fait, pas une critique. Ce qui est incroyable par contre c'est ton aveuglement sur ton incapacité à comprendre le sujet.
Ou Perl, ou l'une des prochaines versions de Python (j'insiste, parce que t'as l'air de continuer à affirmer que mon idée est une idée à la con)
Ce qu'ils font c'est ce que fait Ada depuis 1983 : grosso modo fournir un service de virgule fixe standard. Qu'ils le fassent ou non ne change absolument rien à ce que je dis. Mais comme tu ne comprends pas à quoi sert la virgule fixe par rapport à la virgule flottante, tu crois qu'ils vont faire du calcul "exact" (alors qu'évidement ça ne se produira que dans des cas dont la probabilité est proche de 0). Explication dans ce ps avec la calculatrice:
PS
"La calculatrice (avec une mantisse de 13 chiffres disons) se trompe plus de 99% du temps" signifie que si tu fais une opération élémentaire aléatoire entre deux décimaux aléatoires sur une calculatrice, la proba que le résultat soit correct est de moins de 1% (une piste de démonstration: la proba que le 13 chiffre après la virgule soit nul est de 1/10. Du coup la proba que les deux opérandes aient simultanément un 13 ème chiffre nul après la virgule est de 1%. Or c'est dans ce 1% qu'une addition/soustraction tombe juste). Je passe les opérations pour lesquelles c'est encore plus rare que ça donne un résultat exact qui font encore plus chuter tes illusions sur la calculatrice.
[^] # Re: Puisque tout le monde est sûr de détenir la vérité...
Posté par snowball (site web personnel) . En réponse au journal [Humour] vers un monde différent. Évalué à 0.
Je n'ai pas besoin d'une telle précision. Donc non.
Tu n'as pas d'exactitude puisque 1/3 avec 28 décimales c'est une approximation et pas de l'exactitude. Tu te contredis en moins de 50 mots.
Le programme soumet des calculs à un proco et fait avec ce que peut faire le proco. Au final, tu es totalement tributaire des possibilités du proco. C'est le processeur qui évalue in fine. Tes additions, multiplications etc font toutes appel à ses fonctions internes et s'appuient sur IEEE754, désolé de te décevoir.
Bah zut ! Si Perl n'affiche pas un 7 à la fin c'est qu'il est bon à mettre à la poubelle puisque s'il affiche 0.6666666666 au lieu de 0.6666666667 alors il ne donne pas la meilleure approximation décimale. Fâcheux ça.
La calculatrice se trompe plus de 99% du temps comme Decimal, comme Float.
Dans certains cas exceptionnels (liés au format BCD) ça peut lui arriver d'afficher une valeur exacte, comme Decimal, comme Float.
Aucun de ces systèmes ne peut faire les 4 opérations de manière exacte ne serait-ce que sur les décimaux de [0;1]. Pas besoin d'être un scientifique extraordinaire. Ca s'explique par exemple très bien à des jeunes TS.
Ce qui fait tâche c'est davantage de croire qu'une bonne approximation de 2/3 c'est 0.6666666666 et non 0.6666666667. Mais ça montre bien ce que je dis, tu n'as pas de conception numérique suffisamment avancée pour dire des choses sur un sujet aussi technique. C'est juste un fait, pas une critique. Ce qui est incroyable par contre c'est ton aveuglement sur ton incapacité à comprendre le sujet.
Ce qu'ils font c'est ce que fait Ada depuis 1983 : grosso modo fournir un service de virgule fixe standard. Qu'ils le fassent ou non ne change absolument rien à ce que je dis. Mais comme tu ne comprends pas à quoi sert la virgule fixe par rapport à la virgule flottante, tu crois qu'ils vont faire du calcul "exact" (alors qu'évidement ça ne se produira que dans des cas dont la probabilité est proche de 0). Explication dans ce ps avec la calculatrice:
PS
"La calculatrice (avec une mantisse de 13 chiffres disons) se trompe plus de 99% du temps" signifie que si tu fais une opération élémentaire aléatoire entre deux décimaux aléatoires sur une calculatrice, la proba que le résultat soit correct est de moins de 1% (une piste de démonstration: la proba que le 13 chiffre après la virgule soit nul est de 1/10. Du coup la proba que les deux opérandes aient simultanément un 13 ème chiffre nul après la virgule est de 1%. Or c'est dans ce 1% qu'une addition/soustraction tombe juste). Je passe les opérations pour lesquelles c'est encore plus rare que ça donne un résultat exact qui font encore plus chuter tes illusions sur la calculatrice.