MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Modérateur : Politburo
- Hobiecat
- Fonctionne à 9600 bauds
- Messages : 3644
- Enregistré le : 06 sept. 2011 14:57
- Localisation : Normandie
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
C.Ret a écrit : ↑25 oct. 2020 08:26 Bon, comme j'ai une heure de plus ce dimanche, j'ai sorti ma balance de ménage et éditer tous mes messages où je n'indiquais pas le poids de mes calculettes et pockets:
HP-15C:113g
CASIO fx-602p:129g
TI-57LCD:153g
SHARP PC-1211:164g
HP-28S:217g
HP-41C:221g
HP Prime:239g
SHARP PC1360:246g
TI-74 BASICALC:453g
TI-92 II:570g
Commodore C128D:>5000g
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Bonjour,
Vous avez raison j'ai 1 de trop sur mes résultats...
Maintenant si on confond 2 et 2+1, c'est qu'on a une précision de 1 bit, pas de zéro, non ?
Mais jouons en respectant les règles de l'énoncé.
Si TI60, voici un calcul qui résume la précision de la machine :
2 y^x 43 + 1 - 2 y^x 43 =
Donne 1.... CQFD
Sur Basicalc voici mon code (81 octets; bizarre) :
C'est le même (en plus long) que le tien, et les résultats sont identiques au +1 près.
Hop quelques machines de plus :
HP17BII (137 octets ??) :
Où le Z est le signe sigma de sommation.
On tape 1 [N] [J] et en quelques secondes on obtient 39...
Donc 38 en fait soit 11.43
Citizen SRP-400G :
Ca donne 47 (en soustrayant 1)
On remarque que les noms de programme sont sur 7 caractères au lieu des 8 du modèle Casio.
Egalement le code est bizarre avec ces deux Goto au lieu d'un, en fait si dans le Then on branche directement sur le Label 1, ça imbrique des niveaux de pile ou quelque chose, et on tombe en erreur. C'est un défaut majeur de la Citizen, sans compter ses autres petites manies hyper chiantes, ni l'écran trop petit, ni l'affichage à l'écran de tous les résultats intermédiaires, ni...
Ooooooh calmos papy allez je me sers une bonne camomille...
Lâcher le fusil.... pfffff
Graph 100 et Graph 60 : 49
fx-CG20 "Prizm" et Graph 85 SD : 43
A+
G.E.
Vous avez raison j'ai 1 de trop sur mes résultats...
Maintenant si on confond 2 et 2+1, c'est qu'on a une précision de 1 bit, pas de zéro, non ?
Mais jouons en respectant les règles de l'énoncé.
Si TI60, voici un calcul qui résume la précision de la machine :
2 y^x 43 + 1 - 2 y^x 43 =
Donne 1.... CQFD
Sur Basicalc voici mon code (81 octets; bizarre) :
Code : Tout sélectionner
100 J=0:N=1
110 J=J+1:N=2*N:IF N<N+1 THEN 110
120 PRINT J,J*LOG(2):PAUSE:END
Oui c'est un peu l'idée mais je vais regarder quand ça plante, genre 6000 chiffres je pense.
Hop quelques machines de plus :
HP17BII (137 octets ??) :
Code : Tout sélectionner
J=Z(I:0:50:1:L(N:2xN)+1-N)
On tape 1 [N] [J] et en quelques secondes on obtient 39...
Donc 38 en fait soit 11.43
Citizen SRP-400G :
Code : Tout sélectionner
PRECISI
1->N;0->J;
Label 1:2xN->N;J+1->J;
If(N>=N+1) Then { Goto 2 };
Goto 1;
Label 2:Print J;
End
On remarque que les noms de programme sont sur 7 caractères au lieu des 8 du modèle Casio.
Egalement le code est bizarre avec ces deux Goto au lieu d'un, en fait si dans le Then on branche directement sur le Label 1, ça imbrique des niveaux de pile ou quelque chose, et on tombe en erreur. C'est un défaut majeur de la Citizen, sans compter ses autres petites manies hyper chiantes, ni l'écran trop petit, ni l'affichage à l'écran de tous les résultats intermédiaires, ni...
Ooooooh calmos papy allez je me sers une bonne camomille...
Lâcher le fusil.... pfffff
Graph 100 et Graph 60 : 49
fx-CG20 "Prizm" et Graph 85 SD : 43
A+
G.E.
Modifié en dernier par gege le 25 oct. 2020 12:56, modifié 1 fois.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Salut Gégé
Oui je suis d'accord, d'où mon 'Edit : Ou alors c'est le programme de référence qui a un bug'Maintenant si on confond 2 et 2+1, c'est qu'on a une précision de 1 bit, pas de zéro, non ?
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Bonjour,
Voilà, mais autant prendre la définition du MPO pour que ce soit clair.
Hop X-07 (57 octets) : 46 (13.84)
Sur Citizen SRP-325G (51 octets), c'est assez bizarre... Le programme est quasiment le même que sur la 400G :
Et pourtant il affiche 63 !
Or 2^62+1-2^62 donne zéro, en fait on a 2^46+1-2^46 = 1 et 2^47+1-2^47 = 0, donc la bonne valeur est 46 (13.84).
Avez-vous des idées ?
G.E.
Voilà, mais autant prendre la définition du MPO pour que ce soit clair.
Hop X-07 (57 octets) : 46 (13.84)
Sur Citizen SRP-325G (51 octets), c'est assez bizarre... Le programme est quasiment le même que sur la 400G :
Code : Tout sélectionner
J=0;N=1;
Lbl 1:J=J+1;N=2*N;
IF(N==N+1)THEN{GOTO 2};
GOTO 1;
Lbl 2:PRINT J;
END
Or 2^62+1-2^62 donne zéro, en fait on a 2^46+1-2^46 = 1 et 2^47+1-2^47 = 0, donc la bonne valeur est 46 (13.84).
Avez-vous des idées ?
G.E.
- C.Ret
- Fonctionne à 9600 bauds
- Messages : 3422
- Enregistré le : 31 mai 2008 23:43
- Localisation : N 49°22 E 6°10
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Ah oui, c'est cohérant, elle est donnée dans le Ti-Wiki pour 13 chiffres, là où la Ti-57 LCD est donnée pour 11 chiffres.
Effectivement 2^43 ~ 8.796 EE 12 (ce qui tient dans 13 chiffres)
La limite pour le Ti-57LCD serait donc autour de 35 (soit 10.53605 chiffres) et non pas 26 comme je l'avais annoncé:
Ce qui prouve que mon petit test ne fonctionne pas
Cela m'oblige à vérifier mon résultat faible sur Ti-57 LCD:
2 y^x 27 + 1 - 2 y^x 27 = 1
2 y^x 28 + 1 - 2 y^x 28 = 1
...
2 y^x 35 + 1 - 2 y^x 35 = 1
2 y^x 36 + 1 - 2 y^x 36 = 1 <--- J=36 J.log 2= 10.837
2 y^x 37 + 1 - 2 y^x 37 = 0
En effet, 2^35~3.4360 EE 10 ce qui tient dans les 11 chiffres annoncés pour la Ti-57 LCD.
Il me faut maintenant proposer un code fonctionnel pour cette pauvre machine:
Code : Tout sélectionner
-- St 23.00 02 LBL 00 02 15 2
61.00 00 STO 0 29 03 DSE 31 16 log
56 01 C.t 02 04 2 65 17 *
45 05 y^x 07 18 RCL 0
71.00 06 RCL 0 13 19 R/S
85 07 +
61.01 08 STO 1
01 09 1
75 10 -
71.01 11 RCL 1
95 12 =
26 13 2nd x=t?
22.00 14 GTO 00 (19 pas)
On lance par RST R/S, le code décrémente ce J jusqu'à faire le calcul sans arrondi.
Le J qui fonctionne s'affiche, une pression sur la touche = donne le nombre de décimales J*log 2.
40 EST R/S affiche 36 et = donne 10.837.
Je ne comprends pas pourquoi mon précèdent code ne fonctionne pas
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Bonsoir
Voici une version pour Sharp El-5120 :
RUN
39. 11.74016983
Et une version optimisée pour Ti-95 :
1 RUN
Ultime version ? en copiant l'idée du BREAK à Gégé
1 RUN affiche 43 puis F1 pour afficher 12.944.....
Voici une version pour Sharp El-5120 :
Code : Tout sélectionner
N=1
J=-1
LABEL 1
J=J+1
N=N*2
IF N<N+1GOTO 1
PRINT J
J=J*log 2
PRINT J
39. 11.74016983
Et une version optimisée pour Ti-95 :
Code : Tout sélectionner
000 STO X +/- STO J
005 INC J 2 ST* X RCL X +1= IF> X GT0 0005
020 RCL J x<>t 2 LOG ST* J RCL J HLT
030
Ultime version ? en copiant l'idée du BREAK à Gégé
Code : Tout sélectionner
000 STO X +/- STO J
005 INC J 2 ST* X RCL X +1= IF> X GT0 0005
020 RCL J BREAK *2 LOG = HLT
028
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Bonjour,
Héhé pas mal le code TI95 (le GTO évite le label), mais pourquoi n'as-tu pas mis le 1 de départ dans le programme ?
A continuer sur des machines encore plus bizarres...
Tiens la fx5800 ?
EDIT : le Psion Series 3a, super bizarre...
Alors déjà c'est bizarre les espaces que le Psion réclame entre certaines instructions et pas d'autres (voir code), et que la puissance soit obtenue par le double signe multiplication ** comme en Fortran.
Mais ce qui m'étonne est que le programme renvoie un résultat de 53 (en retirant le 1 en trop).
Il n'y a pas de mode de calcul interactif, donc j'ai mis à la fin une boucle pour tester la valeur de (2^n+1-2^n) lorsqu'on tape une valeur de n.
Et bizarrement pour n=54; il trouve 2 !!!
Si on va dans la calculatrice pour tenter de tester les librairies de calcul, cette dernière ne veut pas afficher plus de 12 chiffres, donc par exemple :
2**54 -> 18014398509500000 le 5 final est un arrondi supérieur correct
2**54-18014398509400000 -> 81928 ce qui est faux, valeur correcte 81984
2**54+1-18014398509400000 -> 81938 ce qui est bizarre !!!
2**54+1-2**54 -> 2 le délire total !!
Alors moi je dis que le test que fait ce MPO nous plonge dans un abîme de complexité !
G.E.
Héhé pas mal le code TI95 (le GTO évite le label), mais pourquoi n'as-tu pas mis le 1 de départ dans le programme ?
A continuer sur des machines encore plus bizarres...
Tiens la fx5800 ?
EDIT : le Psion Series 3a, super bizarre...
Code : Tout sélectionner
PROC precis
local j,n
j=0:n=1
while n<n+1:n=2*n :j=j+1 :endwh :print j
while n>0:input n :print 2**n+1-2**n
endwh
ENDP
Mais ce qui m'étonne est que le programme renvoie un résultat de 53 (en retirant le 1 en trop).
Il n'y a pas de mode de calcul interactif, donc j'ai mis à la fin une boucle pour tester la valeur de (2^n+1-2^n) lorsqu'on tape une valeur de n.
Et bizarrement pour n=54; il trouve 2 !!!
Si on va dans la calculatrice pour tenter de tester les librairies de calcul, cette dernière ne veut pas afficher plus de 12 chiffres, donc par exemple :
2**54 -> 18014398509500000 le 5 final est un arrondi supérieur correct
2**54-18014398509400000 -> 81928 ce qui est faux, valeur correcte 81984
2**54+1-18014398509400000 -> 81938 ce qui est bizarre !!!
2**54+1-2**54 -> 2 le délire total !!
Alors moi je dis que le test que fait ce MPO nous plonge dans un abîme de complexité !
G.E.
Modifié en dernier par gege le 26 oct. 2020 00:28, modifié 1 fois.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Merci Gégé
Pour gagner 1 pas.
Pour gagner 1 pas.
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
- Marge
- Fonctionne à 14400 bauds
- Messages : 6190
- Enregistré le : 01 oct. 2008 14:39
- Localisation : En bas, tout au fond à gauche.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
S'il vous plaît, celle-là, vous me la laissez !
Je suis encore en voie de compréhension du langage utilisé dans cette usine à gaz.
SHARP
Scientific Calculator EL-9000 SUPER SCIENTIFIC
(si on vous l'dit ! C'est parce que je ne suis pas un super scientifique que j'entrave que pouic...)
Je suis encore en voie de compréhension du langage utilisé dans cette usine à gaz.
SHARP
Scientific Calculator EL-9000 SUPER SCIENTIFIC
(si on vous l'dit ! C'est parce que je ne suis pas un super scientifique que j'entrave que pouic...)
Modifié en dernier par Marge le 29 oct. 2020 19:17, modifié 2 fois.
3 hommes, 3 demis, un 3a... Magnéto, Serge !
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
- Marge
- Fonctionne à 14400 bauds
- Messages : 6190
- Enregistré le : 01 oct. 2008 14:39
- Localisation : En bas, tout au fond à gauche.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Eh bien, ça n'aura pas été sans mal. J'ai été incapable de programmer quelque chose de fonctionnel en mode AER I, pourtant adéquat puisque le mode AER II n'est utilisé, selon le manuel, que pour les variables minuscules ou de type grec. Plus grave, les définitions de commandes de boucle p. 180 (└> et <┐) sont fausses car inversées, et de plus l'exemple en AER II (programme Down, chute d'un mobile, p. 144) donne un résultat différent sur la machine (2,5) et dans le livre (2,2).
Bref, après deux heures de recherches...
SHARP EL-9000
j= 36, l=10,83707984
Le programme :
74 octets.
Bref, après deux heures de recherches...
SHARP EL-9000
j= 36, l=10,83707984
Le programme :
Code : Tout sélectionner
(titre:) P
└>x=2x˽x≠x+1■Y►[j=j+1<┐]j=j,l=jLOG 2
3 hommes, 3 demis, un 3a... Magnéto, Serge !
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
- dprtl
- Fonctionne à 1200 bauds
- Messages : 463
- Enregistré le : 27 janv. 2013 00:26
- Localisation : Strasbourg
- Contact :
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Ma Sharp EL-9000 a un souci de nappe de connexion au clavier de droite, probablement cassée. Cela fait des années, et je n'ai pas encore pris la décision de l'ouvrir, car l'opération me paraît risquée pour l'aspect général de la machine. Pourtant, son langage de programmation "AER" exotique m'intrigue
- Marge
- Fonctionne à 14400 bauds
- Messages : 6190
- Enregistré le : 01 oct. 2008 14:39
- Localisation : En bas, tout au fond à gauche.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Ça m'a l'air d'une opération risquée, en effet. Le langage est assez concis, c'est un vrai plus (on peut supprimer les conditions inutiles ou les opérations * et /, mais le manuel est une catastrophe pédagogique. :/dprtl a écrit : ↑26 oct. 2020 14:59 Ma Sharp EL-9000 a un souci de nappe de connexion au clavier de droite, probablement cassée. Cela fait des années, et je n'ai pas encore pris la décision de l'ouvrir, car l'opération me paraît risquée pour l'aspect général de la machine. Pourtant, son langage de programmation "AER" exotique m'intrigue
3 hommes, 3 demis, un 3a... Magnéto, Serge !
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
- Marge
- Fonctionne à 14400 bauds
- Messages : 6190
- Enregistré le : 01 oct. 2008 14:39
- Localisation : En bas, tout au fond à gauche.
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Difficile d'omettre dans ce florilège la calculette programmable la moins chère du marché (je m'exprime sous le contrôle de Tipoucet), j'ai nommé la SINCLAIR Scientific Programmable !
Photo de Computer History UK
Munie de 5 chiffres pour la mantisse - on se débrouille avec les exposants de 10 -, c'est peut-être la moins chère et certainement la plus difficile à programmer correctement pour remplir le cahier des charges puisqu'elle ne possède pas de boucle ni de test conditionnel et qu'il faut donc tester manuellement l'égalité x=x+1. Mais qu'importe, on parvient à placer j dans l'unique mémoire et à l'incrémenter de 1 à chaque tour de roue...
Cette RPN sans pile véritable (mais avec 1 registre) propose jusqu'à 24 pas de programme qu'il faudra bien mesurer car les fonctions secondes exigent un seul pas mais, revers de la médaille, les entrées numériques nécessitent d'être encadrées par la pression de shift (∆) et " (‘’). Autrement dit, en mode "RUN" la machine exige la pression du shift pour accéder aux fonctions au-dessus des touches, mais en mode "PROGRAMMATION" c'est le contraire.
L'instruction B/E est nécessaire pour passer au mode de programmation, mais non pour en sortir (mais l'instruction C/CE, oui).
16 pas, toutefois le programme demeure incomplet. J'ai bien tenté de provoquer une erreur au moyen d'une division par 0, mais l'erreur n'est pas reconnue !
Cela nous donne : J=16, et J*0,30103=4,8160
(ou J* LOG(2) calculé sur la machine = 4,8173, car ici LOG(2)=3,0108.10^-01).
Probablement un record.
P.S. : et en effet, si on essaie de calculer PI à partir de la tangente (1 ∆ ARCTAN 4 *), on obtient 3,1409... ce qui montre assez les difficultés de cet outsider.
Photo de Computer History UK
Munie de 5 chiffres pour la mantisse - on se débrouille avec les exposants de 10 -, c'est peut-être la moins chère et certainement la plus difficile à programmer correctement pour remplir le cahier des charges puisqu'elle ne possède pas de boucle ni de test conditionnel et qu'il faut donc tester manuellement l'égalité x=x+1. Mais qu'importe, on parvient à placer j dans l'unique mémoire et à l'incrémenter de 1 à chaque tour de roue...
Cette RPN sans pile véritable (mais avec 1 registre) propose jusqu'à 24 pas de programme qu'il faudra bien mesurer car les fonctions secondes exigent un seul pas mais, revers de la médaille, les entrées numériques nécessitent d'être encadrées par la pression de shift (∆) et " (‘’). Autrement dit, en mode "RUN" la machine exige la pression du shift pour accéder aux fonctions au-dessus des touches, mais en mode "PROGRAMMATION" c'est le contraire.
Code : Tout sélectionner
B/E (Begin/End)
0 (ENTER)
∆
‘’
2
∆
‘’
*
x<->m
0 (ENTER)
∆
‘’
1
∆
‘’
+
x<->m
0 (ENTER)
L'instruction B/E est nécessaire pour passer au mode de programmation, mais non pour en sortir (mais l'instruction C/CE, oui).
16 pas, toutefois le programme demeure incomplet. J'ai bien tenté de provoquer une erreur au moyen d'une division par 0, mais l'erreur n'est pas reconnue !
Cela nous donne : J=16, et J*0,30103=4,8160
(ou J* LOG(2) calculé sur la machine = 4,8173, car ici LOG(2)=3,0108.10^-01).
Probablement un record.
P.S. : et en effet, si on essaie de calculer PI à partir de la tangente (1 ∆ ARCTAN 4 *), on obtient 3,1409... ce qui montre assez les difficultés de cet outsider.
Modifié en dernier par Marge le 12 mars 2022 23:08, modifié 2 fois.
3 hommes, 3 demis, un 3a... Magnéto, Serge !
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67__: A L I E N .
♣ ♦ « Boris », c'était juste Maurice enrhumé. ♥ ♠
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: MPO n° 97 Spécial 10e Anniversaire : Précision arithmétique
Bonjour,
Tiens sur la Sinclair Scientific (ou plus simplement la réplique fidèle créée par Chris Chung), on obtient 3,14404.
G.E.
Tiens sur la Sinclair Scientific (ou plus simplement la réplique fidèle créée par Chris Chung), on obtient 3,14404.
G.E.