Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.sys.mac.programmation > #2081 > unrolled thread

Y a comme un défaut

Started byjosephb@nowhere.invalid (Joseph-B)
First post2021-12-04 00:54 +0100
Last post2022-02-07 10:56 +0000
Articles 12 on this page of 32 — 9 participants

Back to article view | Back to fr.comp.sys.mac.programmation


Contents

  Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 00:54 +0100
    Re: Y a comme un défaut pehache <pehache.7@gmail.com> - 2021-12-04 02:14 +0100
      Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 10:14 +0100
        Re: Y a comme un défaut Olivier Miakinen <om+news@miakinen.net> - 2021-12-04 12:48 +0100
          Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 13:16 +0100
            Re: Y a comme un défaut Olivier Miakinen <om+news@miakinen.net> - 2021-12-04 13:23 +0100
              Calculette IEEE754 (was: Y a comme un défaut) Olivier Miakinen <om+news@miakinen.net> - 2021-12-04 14:39 +0100
        Re: Y a comme un défaut pehache <pehache.7@gmail.com> - 2021-12-04 13:46 +0100
          Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 15:25 +0100
            Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 14:49 +0000
              Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 19:21 +0100
                Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 18:58 +0000
            Re: Y a comme un défaut Benoit <benoit@com.invalid> - 2021-12-04 16:35 +0000
            Re: Y a comme un défaut pehache <pehache.7@gmail.com> - 2021-12-04 17:39 +0100
              Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 19:21 +0100
                Re: Y a comme un défaut pehache <pehache.7@gmail.com> - 2021-12-04 20:28 +0100
                Re: Y a comme un défaut JPP <jpp@findelmundo.invalid> - 2021-12-05 03:24 -0300
        Re: Y a comme un défaut Julien Salort <listes@salort.eu> - 2021-12-05 09:51 +0100
    Re: Y a comme un défaut Fleuger <g4fleurot@free.fr.invalid> - 2021-12-04 08:27 +0000
      Re: Y a comme un défaut Fleuger <g4fleurot@free.fr.invalid> - 2021-12-04 09:00 +0000
        Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 09:25 +0000
          Re: Y a comme un défaut Fleuger <g4fleurot@free.fr.invalid> - 2021-12-04 13:01 +0000
            Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 14:27 +0000
      Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 10:14 +0100
        Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 09:30 +0000
          Re: Y a comme un défaut josephb@nowhere.invalid (Joseph-B) - 2021-12-04 12:57 +0100
            Re: Y a comme un défaut pehache <pehache.7@gmail.com> - 2021-12-04 14:16 +0100
            Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 14:18 +0000
        Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 10:30 +0000
    Re: Y a comme un défaut "M.V." <mv@gmail.com.invalid> - 2021-12-04 08:45 +0000
    Re: Y a comme un défaut JPP <jpp@findelmundo.invalid> - 2021-12-04 14:16 -0300
    Re: Y a comme un défaut "Néo, l'Élu" <neo-de-matrix@meta-science.fr> - 2022-02-07 10:56 +0000

Page 2 of 2 — ← Prev page 1 [2]


#2088

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 09:25 +0000
Message-ID<sofc6d$t7u$1@dont-email.me>
In reply to#2085
Le 4 décembre 2021 à 10 h 00, Fleuger a tenu les propos suivants :

> repeat with value in serie
>   copy (value div diviseur) to the end of resultat
> end repeat
> display alert (resultat's every item as text) message commentaire

Essaye en changeant cette partie par :
=+=+=+=+=+=+=+=+=
repeat with value in serie
  copy (value - (value div diviseur) * diviseur) to the end of restes
end repeat
display alert (restes's every item as text) message commentaire
=+=+=+=+=+=+=+=+=

Ça te donne les restes corrects même si les résultats du type 0,0 me
gênent un peu.
-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2096

FromFleuger <g4fleurot@free.fr.invalid>
Date2021-12-04 13:01 +0000
Message-ID<sofos6$2ds$1@dont-email.me>
In reply to#2088
Le 4 décembre 2021 à 10:25, M.V. a écrit ceci :

> Essaye en changeant cette partie par :
> =+=+=+=+=+=+=+=+=
> repeat with value in serie
>   copy (value - (value div diviseur) * diviseur) to the end of restes
> end repeat
> display alert (restes's every item as text) message commentaire
> =+=+=+=+=+=+=+=+=

Amusant ! As-tu essayé de reproduire strictement ce que tu me demandes
de faire ?
Ça coince
Erreur de syntaxe
« , » prévu(s) mais jeton inconnu trouvé(s). 
Pour que ça fonctionne, il faut rajouter une espace de chaque côté du
moins dans "(value - (value "
display alert "0,254 - 0,0 - 0,0 - 0,0 - 0,0" message "Restes de la
division par 2,54  de
0,254 - 2,54 - 25,4 - 254 - 2540"

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, ce qui correspond à ce que décrit Olivier MIAKINEN

Comme pour les calculatrices
Si j'entre 1,1111111 x x sur ma calculatrice de bureau, j'obtiens :
1,2345678
Sur la calculette de l'iPhone :
1,23456788
Dans XL, 1,1111111^2 -> 1,23456788
ARRONDI(1,1111111^2;7) -> 1,2345679 différend du résultat de la
calculatrice

-- 
Gérard FLEUROT

[toc] | [prev] | [next] | [standalone]


#2101

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 14:27 +0000
Message-ID<softs9$18k$1@dont-email.me>
In reply to#2096
Le 4 décembre 2021 à 14 h 01, Fleuger a tenu les propos suivants :

> Amusant ! As-tu essayé de reproduire strictement ce que tu me demandes
> de faire ?
> Ça coince

Oui ! Je me suis demandé pourquoi et j'ai fini par trouver… J'applique
un script avant l'envoi, script qui, entre autres choses, transforme
certaines espaces en espaces insécables : c'est ce qui s'est passé sur
la ligne : 
  copy (value - (value div diviseur) * diviseur) to the end of restes
Mon script a remplacé les espaces qui encadrent le signe - par des
espaces insécables et AS n'a pas aimé du tout !!!

> 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

C'est tout à fait normal ;-)
-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2087

Fromjosephb@nowhere.invalid (Joseph-B)
Date2021-12-04 10:14 +0100
Message-ID<1pjnqfg.aa994g1a1yputN%josephb@nowhere.invalid>
In reply to#2083
Bonjour Fleuger,
Fleuger <g4fleurot@free.fr.invalid> wrote:

> 
> Il  faudrait que tu trouves l'équivalent de cette formule en AS

Merci à toi et MV pour vos tests.
J'ai pensé que le bug était lié à l'interpréteur d'Applescript (ce ne
serait pas la première fois qu'on y découvre des "anomalies" qui
trainent depuis l'origine), mais que ça affecte aussi les autres
applications faisant appel aux fonctions mathématiques préprogrammées du
Système (ou dans le copro-arithmétique)  est quand même bien plus grave.

Voir ma réponse à pehache pour contourner le bug en AppleScript.

-- 
J. B.

[toc] | [prev] | [next] | [standalone]


#2089

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 09:30 +0000
Message-ID<sofcff$2o3$1@dont-email.me>
In reply to#2087
Le 4 décembre 2021 à 10 h 14, Joseph-B a tenu les propos suivants :

> Voir ma réponse à pehache pour contourner le bug en AppleScript.

Les grands esprits se rencontrent :
<news:sofc6d$t7u$1@dont-email.me>

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 !!!
-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2092

Fromjosephb@nowhere.invalid (Joseph-B)
Date2021-12-04 12:57 +0100
Message-ID<1pjnv45.1lflnz815gjx9iN%josephb@nowhere.invalid>
In reply to#2089
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 et pas la
fonction "partie Entière de division" la ruse est est vite trouvée, mais
quand même c'est grave puisque le bug semble inclus dans les bibli math
de l'OS.

> 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, selon
ce que le compilateur aura jugé le plus adapté, ce n'est pas une
indication d'arrondi au 1/10ème.

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.

> Je viens de tester 
>     return (2.001 - 2)
> dans AS… 

On peut préférer le résultat par javascript, il y en a pour tous les
goûts.

Heureusement il y a toujours une parade programmatique simple : 
return (2 - 2 + 0.001) dans cet ordre et pas (2+ 0.001-2)

>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…? 

-- 
J. B.

[toc] | [prev] | [next] | [standalone]


#2097

Frompehache <pehache.7@gmail.com>
Date2021-12-04 14:16 +0100
Message-ID<j1181rF5j42U1@mid.individual.net>
In reply to#2092
Le 04/12/2021 à 12:57, Joseph-B a écrit :
> 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

Jusqu'à preuve du contraire rien n'indique un bug dans ce que tu as 
exposé, juste un comportement qu'on peut expliquer en arithmétique 
flottante.

> 
> 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.

AS est un langage à typage dynamique, c'est loin d'être le seul, et ça a 
aussi des avantages, pas uniquement des inconvénients.

> 
>> 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…?

S'il y a un volontaire pour se ridiculiser il peut y aller :-)


-- 
"...[la moto] un engin qui par les lois de la physique ne peut pas
freiner en courbe.", SLD sur fr.rec.bricolage
"...sois ouvert aux idées des autres pour peu qu'elles aillent dans le
même sens que les tiennes.", ST sur fr.bio.medecine

[toc] | [prev] | [next] | [standalone]


#2099

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 14:18 +0000
Message-ID<softch$ng1$1@dont-email.me>
In reply to#2092
Le 4 décembre 2021 à 12 h 57, Joseph-B a tenu les propos suivants :

>> 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

Essaye en introduisant 25.4001 dans la liste des dividendes avec 2.54
(ou 25.4) comme diviseur :
=+=+=+=+=+=+=+=
set dividende to 25.4001
set diviseur to 2.54
return Modulo(dividende, diviseur)

on Modulo(dividende, diviseur)
  set partieEntiere to (dividende div diviseur)
  set reste to (dividende - (partieEntiere * diviseur))
  return reste
end Modulo
=+=+=+=+=+=+=+=

En passant par des entiers (transformation de 25.4001 en 254001 et
transformation de 2.54 en 254000), on lève ce nouveau souci mais là
encore, la réponse que j'obtiens, à savoir 1,0E-4, ne me plaît pas du
tout dans sa forme même si elle est plus mieux que le résultat infect 
précédent!

>> 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

OK. Ma vision d'humain (enfin : de ce qu'il en reste) n'est pas la même
que celle du logiciel ! ;-)
Mais comme ça continuait malgré tout à me gêner, j'ai rajouté une ligne
de script pour qu'un entier soit écrit sous forme d'un entier ;-)
-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2090

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 10:30 +0000
Message-ID<soffvg$1ni$1@dont-email.me>
In reply to#2087
Le 4 décembre 2021 à 10 h 14, Joseph-B a tenu les propos suivants :

> Merci à toi et MV pour vos tests.

Je viens de tester 
    return (2.001 - 2)
dans AS… Faut-il en rire ?
-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2084

From"M.V." <mv@gmail.com.invalid>
Date2021-12-04 08:45 +0000
Message-ID<sof9rd$jbu$1@dont-email.me>
In reply to#2081
Le 4 décembre 2021 à 00 h 54, Joseph-B a tenu les propos suivants :

> pour info, avec 2,54  j'obtiens 
> 0,254 - 0,0 - 2,54 - 2,54 - 2,54
>
> et avec 25,4
> 0,254 - 2,54 - 0,0 - 1,42108547152E-14 - 1,42108547152E-13

Mêmes résultats sous Mojave comme te l'a dit Fleuger.
Mais je découvre que mod travaillait également avec des décimaux et pas
seulement avec des entiers. J'avais toujours pensé que c'était
équivalent à la congruence !

-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

[toc] | [prev] | [next] | [standalone]


#2106

FromJPP <jpp@findelmundo.invalid>
Date2021-12-04 14:16 -0300
Message-ID<sog7q3$hke$1@mail1.pppi-graf.com>
In reply to#2081
On 03/12/21 20:54, Joseph-B wrote:
> Bonjour,

Bonsoir :-)

	display alert "0,254 - 0,0 - 2,54 - 2,54 - 2,54" message "Restes de la 
division par 2,54  de
0,254 - 2,54 - 25,4 - 254 - 2540"

	display alert "0,254 - 2,54 - 0,0 - 1,42108547152E-14 - 
1,42108547152E-13" message "Restes de la division par 25,4  de
0,254 - 2,54 - 25,4 - 254 - 2540"

[toc] | [prev] | [next] | [standalone]


#2144

From"Néo, l'Élu" <neo-de-matrix@meta-science.fr>
Date2022-02-07 10:56 +0000
Message-ID<stqttk$hcd$1@dont-email.me>
In reply to#2081
Le 4 décembre 2021 à 00:54, Joseph-B a écrit :


> Bonjour,
>
> Sauf erreur de ma part, je viens de faire une découverte déstabilisante.
> Des volontaires pour exécuter le petit script que je vous mets en dessous ?
> Après le premier test avec la valeur 2.54 pour diviseur
> refaites l'essai avec 25.4
> Dites-moi si des résultats obtenus chez vous sont conformes ou délirants ?
> Je ne me rappelle pas avoir jamais rencontré cette "anomalie" depuis que je tripote appleScript*. 
> Le bug provient-il de El Cap ou se perpétue-t-il encore ?
> * Ce qui ne veut pas dire qu'elle n'était pas déjà là ?
>
> *******************
> set diviseur to 2.54
> set serie to {0.254, 2.54, 25.4, 254, 2540}
> set restes to {}
> set text item delimiters to " - "
> set commentaire to "Restes de la division par " & (diviseur as text) & "  de" & linefeed & (serie as string)
>
> repeat with value in serie
>    copy (value mod diviseur) to the end of restes
> end repeat
> display alert (restes's every item as text) message commentaire
>
> *********************
>
> AppleScript operator             Description
> mod                        Remainder.
> A binary arithmetic operator that divides the number to its left by the number to its right and returns the remainder as its
> result.
> Class of operands: integer, real    Class of result: integer, real
>
> *********************
> pour info, avec 2,54  j'obtiens 
> 0,254 - 0,0 - 2,54 - 2,54 - 2,54
>
> et avec 25,4
> 0,254 - 2,54 - 0,0 - 1,42108547152E-14 - 1,42108547152E-13
>

je ne vois ce problème avec Monterey 12.2

-- 
-- 
  \ /    Croire c'est le contraire de savoir,
-- o --  si j'y crois, je ne sais pas,
  / \    si je sais, pas la peine d'y croire.
--> Je crois pas, car je sais que c'est faux malgré tout... 
https://www.facebook.com/groups/2301145973445072
https://www.caminteresse.fr/culture/dou-vient-lexpression-etre-connu-comme-le-loup-blanc-1184674/

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | fr.comp.sys.mac.programmation


csiph-web