M.V. wrote:Les grands esprits se rencontrent :
<news:sofc6d$t7u$
Oui, puisque la fonction "Reste de division" est bugguée
Il a été beaucoup reproché Í Applescript de ne pas obliger Í déclarer le
type des variables et opérandes utilisés dans le script (Integer, Real,
String, List…), laissant Í l'interpréteur deviner de quoi il retourne au
prix d'un gÍ¢chis de mémoire et risque d'erreur Í l'exécution alors que
la compilation n'aura rien détecté d'incohérent.
Faut-il en rire ?
Surtout pas, c'est désormais interdit, et c'est tant mieux quand on
réalise l'empreinte carbone et la charge virale dangereusement exhalées
Í chaque éclat de rire.
Sérieusement, ce qu'il nous faut c'est un·e contribut·eur·rice qui
voudra bien lancer un # indigné sur Twitter pour qu'Apple se sorte les
doigts…?
M.V. <mv@gmail.com.invalid> wrote:
Les grands esprits se rencontrent :
<news:sofc6d$t7u$1@dont-email.me>
Oui, puisque la fonction "Reste de division" est bugguée
Il a été beaucoup reproché Í Applescript de ne pas obliger Í déclarer le
type des variables et opérandes utilisés dans le script (Integer, Real,
String, List…), laissant Í l'interpréteur deviner de quoi il retourne au
prix d'un gÍ¢chis de mémoire et risque d'erreur Í l'exécution alors que
la compilation n'aura rien détecté d'incohérent.
Faut-il en rire ?
Surtout pas, c'est désormais interdit, et c'est tant mieux quand on
réalise l'empreinte carbone et la charge virale dangereusement exhalées
Í chaque éclat de rire.
Sérieusement, ce qu'il nous faut c'est un·e contribut·eur·rice qui
voudra bien lancer un # indigné sur Twitter pour qu'Apple se sorte les
doigts…?
M.V. wrote:Les grands esprits se rencontrent :
<news:sofc6d$t7u$
Oui, puisque la fonction "Reste de division" est bugguée
Il a été beaucoup reproché Í Applescript de ne pas obliger Í déclarer le
type des variables et opérandes utilisés dans le script (Integer, Real,
String, List…), laissant Í l'interpréteur deviner de quoi il retourne au
prix d'un gÍ¢chis de mémoire et risque d'erreur Í l'exécution alors que
la compilation n'aura rien détecté d'incohérent.
Faut-il en rire ?
Surtout pas, c'est désormais interdit, et c'est tant mieux quand on
réalise l'empreinte carbone et la charge virale dangereusement exhalées
Í chaque éclat de rire.
Sérieusement, ce qu'il nous faut c'est un·e contribut·eur·rice qui
voudra bien lancer un # indigné sur Twitter pour qu'Apple se sorte les
doigts…?
Pour info, le nombre 2,54 n'est pas représentable dans un flottant.
Les nombres les plus proches sont :
2 + 1215971899390033/2^51 =~ 2,539999999999999591437926
2 + 1215971899390034/2^51 =~ 2,540000000000000035527136
Pour info, le nombre 2,54 n'est pas représentable dans un flottant.
Les nombres les plus proches sont :
2 + 1215971899390033/2^51 =~ 2,539999999999999591437926
2 + 1215971899390034/2^51 =~ 2,540000000000000035527136
Pour info, le nombre 2,54 n'est pas représentable dans un flottant.
Les nombres les plus proches sont :
2 + 1215971899390033/2^51 =~ 2,539999999999999591437926
2 + 1215971899390034/2^51 =~ 2,540000000000000035527136
Les grands esprits se rencontrent :
<news:sofc6d$t7u$
Oui, puisque la fonction "Reste de division" est bugguée et pas la
fonction "partie Entière de division" la ruse est vite trouvée
Je vois que pour ta routine Modulo(), tu obtiens aussi des résultats du
type 0,0 et, pour moi, ça ne veut pas forcément dire 0Â : 0,0 signifie,
pour moi, une valeur approchée au dixième du résultat !!!
Non, par convention dans AppleScript 0 signifie que les calculs et le
résultat ont eté effectués sur des entiers et 0.0 sur des réels
Les grands esprits se rencontrent :
<news:sofc6d$t7u$1@dont-email.me>
Oui, puisque la fonction "Reste de division" est bugguée et pas la
fonction "partie Entière de division" la ruse est vite trouvée
Je vois que pour ta routine Modulo(), tu obtiens aussi des résultats du
type 0,0 et, pour moi, ça ne veut pas forcément dire 0Â : 0,0 signifie,
pour moi, une valeur approchée au dixième du résultat !!!
Non, par convention dans AppleScript 0 signifie que les calculs et le
résultat ont eté effectués sur des entiers et 0.0 sur des réels
Les grands esprits se rencontrent :
<news:sofc6d$t7u$
Oui, puisque la fonction "Reste de division" est bugguée et pas la
fonction "partie Entière de division" la ruse est vite trouvée
Je vois que pour ta routine Modulo(), tu obtiens aussi des résultats du
type 0,0 et, pour moi, ça ne veut pas forcément dire 0Â : 0,0 signifie,
pour moi, une valeur approchée au dixième du résultat !!!
Non, par convention dans AppleScript 0 signifie que les calculs et le
résultat ont eté effectués sur des entiers et 0.0 sur des réels
Amusant ! As-tu essayé de reproduire strictement ce que tu me demandes
de faire ?
Ça coince
Ceci dit, sur le mac, j'ai toujours eu des problèmes en essayant de
reproduire dans Excel les calculs des administrations - Impʹts, Caisses
de retraite, banques (bourse).
Pour retrouver les mêmes résultats, il faut que j'introduise Í tÍ¢tons
dans les formules des ARRONDI, ARRONDI.INF, ARRONDI.SUP en fixant un
nombre de décimales
Amusant ! As-tu essayé de reproduire strictement ce que tu me demandes
de faire ?
Ça coince
Ceci dit, sur le mac, j'ai toujours eu des problèmes en essayant de
reproduire dans Excel les calculs des administrations - Impʹts, Caisses
de retraite, banques (bourse).
Pour retrouver les mêmes résultats, il faut que j'introduise Í tÍ¢tons
dans les formules des ARRONDI, ARRONDI.INF, ARRONDI.SUP en fixant un
nombre de décimales
Amusant ! As-tu essayé de reproduire strictement ce que tu me demandes
de faire ?
Ça coince
Ceci dit, sur le mac, j'ai toujours eu des problèmes en essayant de
reproduire dans Excel les calculs des administrations - Impʹts, Caisses
de retraite, banques (bourse).
Pour retrouver les mêmes résultats, il faut que j'introduise Í tÍ¢tons
dans les formules des ARRONDI, ARRONDI.INF, ARRONDI.SUP en fixant un
nombre de décimales
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
pehache wrote:Le truc classique c'est (1+1e-16)-1 dont le résultat est zéro
exactement, parce que la représentation d'un flottant 64 bits ne peut
pas différencier (1+1e-16) de 1
Je me moque éperdument que les limites du calcul en virgule flottante Í
e-14 ou e-16 les confondent Í zéro,
ce que vous n'avez pas l'air de
comprendre c'est qu'il n'est pas admissible de la part d'ingénieurs de
laisser faire en sorte que leur bijou d'intelligence et de science ne
soit pas cohérent avec la réalité triviale.
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
(2.001-2)
(2.001-2)*1e18
int64((2.001-2)*1e18)
et ça c'est dÍ» Í une science tellement supérieure qu'elle devrait clore
le bec des ignorants même si c'est en contradiction avec l'enseignement
de l'arithmétique élémentaire.
Mac, PC, Supercalculateur ou calculette Í 2 balles, ne sont que des put…
d'outils./
Il n'est pas acceptable que ce soit Í l'utilisateur lambda dans le cadre
de son utilisation basique (2.001 -2 sur un Mac) de ne s'en prendre qu'Í
lui même parce qu'il a eu l'impudence de soumettre un calcul dont le
résultat affiché (pour "légitime" qu'il soit) est en contradiction avec
ce que ces pauvres ignorantins de maÍ®tres d'école ont passé des vies Í
enseigner.
D'après toi et OM ce serait au clampin utilisateur d'établir des
procédures de tests de validité des librairies mathématiques que les
ingénieurs d'Apple n'ont pas prix la peine de faire ?
pehache <pehache.7@gmail.com> wrote:
Le truc classique c'est (1+1e-16)-1 dont le résultat est zéro
exactement, parce que la représentation d'un flottant 64 bits ne peut
pas différencier (1+1e-16) de 1
Je me moque éperdument que les limites du calcul en virgule flottante Í
e-14 ou e-16 les confondent Í zéro,
ce que vous n'avez pas l'air de
comprendre c'est qu'il n'est pas admissible de la part d'ingénieurs de
laisser faire en sorte que leur bijou d'intelligence et de science ne
soit pas cohérent avec la réalité triviale.
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
(2.001-2)
(2.001-2)*1e18
int64((2.001-2)*1e18)
et ça c'est dÍ» Í une science tellement supérieure qu'elle devrait clore
le bec des ignorants même si c'est en contradiction avec l'enseignement
de l'arithmétique élémentaire.
Mac, PC, Supercalculateur ou calculette Í 2 balles, ne sont que des put…
d'outils./
Il n'est pas acceptable que ce soit Í l'utilisateur lambda dans le cadre
de son utilisation basique (2.001 -2 sur un Mac) de ne s'en prendre qu'Í
lui même parce qu'il a eu l'impudence de soumettre un calcul dont le
résultat affiché (pour "légitime" qu'il soit) est en contradiction avec
ce que ces pauvres ignorantins de maÍ®tres d'école ont passé des vies Í
enseigner.
D'après toi et OM ce serait au clampin utilisateur d'établir des
procédures de tests de validité des librairies mathématiques que les
ingénieurs d'Apple n'ont pas prix la peine de faire ?
pehache wrote:Le truc classique c'est (1+1e-16)-1 dont le résultat est zéro
exactement, parce que la représentation d'un flottant 64 bits ne peut
pas différencier (1+1e-16) de 1
Je me moque éperdument que les limites du calcul en virgule flottante Í
e-14 ou e-16 les confondent Í zéro,
ce que vous n'avez pas l'air de
comprendre c'est qu'il n'est pas admissible de la part d'ingénieurs de
laisser faire en sorte que leur bijou d'intelligence et de science ne
soit pas cohérent avec la réalité triviale.
Pour reprendre l'exemple de MV,
(2.001 -2) avec une calculette Í moins d'un euro retournera 0,001
Ouais, mais c'est moche et trivial tandis que
(2.001 -2) dans AppleScript retournera 9.9999999999989E-4
(2.001-2)
(2.001-2)*1e18
int64((2.001-2)*1e18)
et ça c'est dÍ» Í une science tellement supérieure qu'elle devrait clore
le bec des ignorants même si c'est en contradiction avec l'enseignement
de l'arithmétique élémentaire.
Mac, PC, Supercalculateur ou calculette Í 2 balles, ne sont que des put…
d'outils./
Il n'est pas acceptable que ce soit Í l'utilisateur lambda dans le cadre
de son utilisation basique (2.001 -2 sur un Mac) de ne s'en prendre qu'Í
lui même parce qu'il a eu l'impudence de soumettre un calcul dont le
résultat affiché (pour "légitime" qu'il soit) est en contradiction avec
ce que ces pauvres ignorantins de maÍ®tres d'école ont passé des vies Í
enseigner.
D'après toi et OM ce serait au clampin utilisateur d'établir des
procédures de tests de validité des librairies mathématiques que les
ingénieurs d'Apple n'ont pas prix la peine de faire ?
"A chaque problème le bon outil". Si tu plante ton clou avec un
tournevis ce n'est pas au fabricant du tournevis qu'il faut t'en prendre
si ça ne va pas.
"A chaque problème le bon outil". Si tu plante ton clou avec un
tournevis ce n'est pas au fabricant du tournevis qu'il faut t'en prendre
si ça ne va pas.
"A chaque problème le bon outil". Si tu plante ton clou avec un
tournevis ce n'est pas au fabricant du tournevis qu'il faut t'en prendre
si ça ne va pas.
Ceci dit, je partage ton courroux (coucou) surtout quand je vois le
script que j'ai dÍ» pondre pour obtenir un résultat correct (jusqu'Í
preuve du contraire) pour éviter des résultats Í la mords-moi le nœud.
J'en suis lÍ :
Ceci dit, je partage ton courroux (coucou) surtout quand je vois le
script que j'ai dÍ» pondre pour obtenir un résultat correct (jusqu'Í
preuve du contraire) pour éviter des résultats Í la mords-moi le nœud.
J'en suis lÍ :
Ceci dit, je partage ton courroux (coucou) surtout quand je vois le
script que j'ai dÍ» pondre pour obtenir un résultat correct (jusqu'Í
preuve du contraire) pour éviter des résultats Í la mords-moi le nœud.
J'en suis lÍ :
Aussi longtemps qu'Applescript ne laissera pas le choix de travailler en
floatting-point ou fixed-point, obligeant Í des contorsions insensées
pour s'assurer qu'une opération aussi banale que 2.001-2 = 0.001 est
réalisée,
Aussi longtemps qu'Applescript ne laissera pas le choix de travailler en
floatting-point ou fixed-point, obligeant Í des contorsions insensées
pour s'assurer qu'une opération aussi banale que 2.001-2 = 0.001 est
réalisée,
Aussi longtemps qu'Applescript ne laissera pas le choix de travailler en
floatting-point ou fixed-point, obligeant Í des contorsions insensées
pour s'assurer qu'une opération aussi banale que 2.001-2 = 0.001 est
réalisée,
Il n'y a pas forcément de défaut, calculer des restes en arithmétique
flottante est forcément casse-gueule quand le résultat de la division
est censé être une valeur entière. Quand tu écris "2,54" (ou n'importe
quelle autre valeur) la représentation en machine est une approximation
de cette valeur, ce n'est pas la valeur exacte (sauf coup de chance).
Ton argument serait recevable, encore que très dérangeant dans les
calculs pratiques, pour (254 mod 25.4) ==> 1.4210854715202E-14
LÍ o͹ il n'est plus soutenable c'est pour (254 mod 2.54) ==> 2.54
254 % 2.54
from decimal import Decimal
Decimal("254") % Decimal("2.54")
Il n'y a pas forcément de défaut, calculer des restes en arithmétique
flottante est forcément casse-gueule quand le résultat de la division
est censé être une valeur entière. Quand tu écris "2,54" (ou n'importe
quelle autre valeur) la représentation en machine est une approximation
de cette valeur, ce n'est pas la valeur exacte (sauf coup de chance).
Ton argument serait recevable, encore que très dérangeant dans les
calculs pratiques, pour (254 mod 25.4) ==> 1.4210854715202E-14
LÍ o͹ il n'est plus soutenable c'est pour (254 mod 2.54) ==> 2.54
254 % 2.54
from decimal import Decimal
Decimal("254") % Decimal("2.54")
Il n'y a pas forcément de défaut, calculer des restes en arithmétique
flottante est forcément casse-gueule quand le résultat de la division
est censé être une valeur entière. Quand tu écris "2,54" (ou n'importe
quelle autre valeur) la représentation en machine est une approximation
de cette valeur, ce n'est pas la valeur exacte (sauf coup de chance).
Ton argument serait recevable, encore que très dérangeant dans les
calculs pratiques, pour (254 mod 25.4) ==> 1.4210854715202E-14
LÍ o͹ il n'est plus soutenable c'est pour (254 mod 2.54) ==> 2.54
254 % 2.54
from decimal import Decimal
Decimal("254") % Decimal("2.54")