96² = ?

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Avatar de l’utilisateur
oli
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 311
Inscription : 30 mars 2012 14:13
Localisation : CH

Re: 96² = ?

Message par oli » 27 févr. 2013 11:32

Ce problème est bien connu sur mes 2 hp-35 (avec n'importe quelle élévation à la puissance)
par ex. 2^10= 1023.999999
Que les anciennes hp (RPN) avant qu'elles ne soient Made in China !!!

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Re: 96² = ?

Message par Paul Tergeist » 27 févr. 2013 11:34

Il est extra cet émulateur. Félicitations.
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3397
Inscription : 06 sept. 2011 14:57
Localisation : Normandie

Re: 96² = ?

Message par Hobiecat » 27 févr. 2013 11:56

En fait, il faut garder à l'esprit que les calculs réalisés par nos machines sont souvent un compromis entre la justesse du résultat, la rapidité du calcul, et la méthode d'approximation utilisée pour trouver le résultat.

Suivant le choix du constructeur, qui je pense se préoccupait surtout de rapidité donc d'avoir l'algorithme le plus efficace, la précision passait certainement au second plan dès l'instant que la précision donnait au minimum trois chiffres après la virgule corrects : les applications qui ont besoin de plus de précision sont quand même très limitées (j'imagine des domaines comme le nucléaire, l'astronomie, etc...), et ils utilisent à ma connaissance des ordinateurs avec la puissance requise et non une vieille machine de poche ! :wink: Sur ce point, je rejoins tout à fait C.Ret : les machines de poche ont remplacé les tables, mais ont gardé plus ou moins la même précision que les dites tables.

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Re: 96² = ?

Message par Paul Tergeist » 27 févr. 2013 12:11

La précision mathématique poussée a l'extrême ne reflète pas forcément la réalité.
Par exemple pour l'étude des phénomènes d'explosions, on sait que la courbe énergétique est une enveloppe en 1/X^2.
D'un point de vue mathématique, au point 0 on obtiendrait une énergie infinie. Or heureusement ce n'est pas le cas.
L'énergie de l'explosion est bornée.
D'un point de vue physique ce résultat n'est pas une surprise car le physicien sait que l'infini
n'existe pas dans la structure de notre univers. Dans notre univers, la distance la plus petite qui peut
séparer deux particules est la constante h dite constante de Planck (proche de 10E-34). Et l'infini
peut se concevoir comme valant 1/h. Du coup le calcul d'une fonction f en l'infini se résumerait
- dans cette mathématique - à calculer f(1/h). C'est une mathématique discutable mais qui tient la route,
qui simplifie les études et qui peut lever des ambiguïtés.
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Avatar de l’utilisateur
Alexandre
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 747
Inscription : 26 janv. 2007 22:14
Localisation : RP
Contact :

Re: 96² = ?

Message par Alexandre » 27 févr. 2013 13:40

Mon brave Sharp 1262 ne fait pas cette erreur!
96 ^2= 9216!
Ouais!
Dernière édition par Alexandre le 27 févr. 2013 20:06, édité 1 fois.
Sharp PC1211/1212, CE122, PC1245/47/46s/51/60/61/62/70, CE125, PC1360/50, CE140P, PC1402, CE129P, PC1500/A, CE150, PC E500, EL1195. Canon X-07. Ti 57. Newton 110. HP-12C. Psion3a

Avatar de l’utilisateur
doum-doum
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 973
Inscription : 08 déc. 2012 17:24

Re: 96² = ?

Message par doum-doum » 27 févr. 2013 19:25

Mes Sharp PC1401 et PC1246S donnent aussi 96² = 9216

Avatar de l’utilisateur
badaze
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7462
Inscription : 12 févr. 2007 19:36
Localisation : Pas très loin de Lyon
Contact :

Re: 96² = ?

Message par badaze » 27 févr. 2013 20:24

Mon Sharp 1403H donne aussi 9216 and mode calculatrice et en mode basic.
Tout est bon dans le pocket.
Moi j'aime tout.... Casio, HP, Sharp, TI et les autres sauf que les TI semblent ne pas m'aimer :(
http://www.emmella.fr
Mes Casio - HP - Sharp - TI
Homme invisible.

cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2288
Inscription : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: 96² = ?

Message par cgh » 27 févr. 2013 20:28

remy a écrit :Zut, pockemul ne fait pas l'erreur d'arondi. Pas glob, je vais modifier ca.
Si nous avions teste avec PockEmul. Le PC1251/PC1500 font l'erreur de calcul. Le PC1261 ne l'a fait pas.

Le PC1261 reel donne bien 9216 8)

Il y a avait un encart ou un article dans une revue (Science et Vie ?, l'OP, l'OI ?), et la conclusion avait ete quelque chose comme : "Pour les puissances avec des exposants entiers, il vaut mieux utiliser X*X*X... que X^. Les formules n'ayant pas forcement la precision suffisante pour donner des resultats exacts."
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque

destroyedlolo
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1880
Inscription : 03 mai 2003 02:24
Localisation : Nonglard (Annecy)
Contact :

Re: 96² = ?

Message par destroyedlolo » 28 févr. 2013 12:51

remy a écrit :Zut, pockemul ne fait pas l'erreur d'arondi. Pas glob, je vais modifier ca.
??? tu veux dire que n’émule pas les instructions procs mais que tu simules les calculs ?

Sinon, pour repondre sur la representation des chiffres, les sharp 8b hors series 1500/1600 (que je ne connait pas) font les calculs en BCD sur 12 digits en interne si je me rappel bien. Mais lorsqu'ils doivent presenter le resultat a l'ecran ou le stocker dans une variable, ils font un arrondit sur les 2 derniers digits, justement pour car les inge de chez sharp ont decide que leur marge d'erreur etait trop grosse.

Sinon, le seul impact auquel j'ai du faire face durant mes etudes etait que de fait, la machine disait par erreur d'une simplification d'expression etait fausse alors qu'elle etait bonne.
Je veux dire que pour verifier que mes simplifications etaient bonnes, je faisais :
  • X=n'importe quelle valeur qui ne creait pas de specificite
  • Expression original = Expression simplifiée
Si le resultat etait juste, la machine doit repondre 1 (vrai).
Maintenant, quand elle me repondait que c'etait faux alors que j'etait a peu pres sur de mon coup, je faisais

Code : Tout sélectionner

(Expression original) - (Expression simplifiée)
Si le resultat etait inferieur a 1E-08 ... c'etait du aux erreurs de calcul.
Amiga, UNIX
Sharp, NetBSD http://destroyedlolo.info/
Apache, PHP 100 % dictionnary free
Vacances, Voyages 1 mispelling by word

Avatar de l’utilisateur
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3397
Inscription : 06 sept. 2011 14:57
Localisation : Normandie

Re: 96² = ?

Message par Hobiecat » 28 févr. 2013 13:03

destroyedlolo a écrit :Si le resultat etait inferieur a 1E-08 ... c'etait du aux erreurs de calcul.
Ce n'est pas toujours une erreur de calcul : avec des valeurs simples comme 1/3, 1/6, qui si on les représente en chiffres ont un nombre infini de décimales après la virgule, sont impossibles à définir dans nos machines. Il y a donc un arrondi puisqu'on tronque les décimales après 10 ou 12 chiffres significatifs. Le résultat n'est donc pas une erreur de calcul mais une erreur d'arrondi (ce qui ne change pas grand chose, je vous l'accorde ! :mrgreen: )

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2086
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: 96² = ?

Message par remy » 28 févr. 2013 13:53

destroyedlolo a écrit :
remy a écrit :Zut, pockemul ne fait pas l'erreur d'arondi. Pas glob, je vais modifier ca.
??? tu veux dire que n’émule pas les instructions procs mais que tu simules les calculs ?
BIen sur l'émulation est totale et les erreurs d'arrondi sont aussi présentes dans PockEmul,
Je parlais de la SIMULATION du PC-1211.
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store

Gilles59
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1428
Inscription : 27 oct. 2010 20:46

Re: 96² = ?

Message par Gilles59 » 28 févr. 2013 16:42

Il y a longtemps j'avais remarqué cela:

La Casio 602P semble hyper précise sur des calculs simple. En fait elle utilise pour ses calculs interne un système d'arrondi pour que xxx.9999999 -> xxx(+1) etc.

Par exemple : 2 Racine carré puis x² donne _exactement_ 2

3 1/x 3 donne exactement 3
2 y^x 3 +/- y^3 donne exactement 2
10 LN e^x donne exactement 10
etc.

C'est tres pratique pour certains algorithme quand on travaille avec des entiers et je m'étonnais souvent de l'OP des obligations d'arrondis dans le programmes HP41 ou 58/59 souvent inutiles sur la 602

La 602P me semblait donc beaucoup plus précise que les TI58 ou HP41 de l'époque.... Or dès que les calculs deviennent complexes la 602 devient plutôt moins précise que ces concurrentes (bien que çà reste très correct) : Cela s'explique car les arrondis internes qui masquent ces erreurs visibles à l'oeil entrainent en fait des biais pires sur des calculs en chaine . Je ne vous expliquerai pas ici pourquoi mais j'avais lu article qui expliquait cela fort bien et que toute technique visant à 'arrondir' pour corriger les erreurs visibles entrainaient plutôt une précision moindre (sauf à travailler avec des entiers uniquement)

Sur les 48/50 , racine 2 au carré donne 1.99999999.... alors que la précision interne est supérieure à une 602P et paradoxalement c'est la 48 qui a numériquement raison

Idempour la 39GII qui semble partager les mêmes algo que la 48 (venant de la 28 et repris jusque la 50 il me semble)
Casio FX-502P /602P / 603P / FX180P+ / FX4000P / TI57 / TI66 / TI74 Basicalc / TI95 Procalc / HP12C / HP15C LE / DM41L / HP 30B / HP39GII / HP 48SX USA / 49G / 49G+ / 50G / 50G NewRPL / HP Prime / Oric 1 / Amstrad CPC 6128+

Avatar de l’utilisateur
Paul Tergeist
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2417
Inscription : 15 oct. 2007 15:50
Localisation : 3ème planète après le soleil

Re: 96² = ?

Message par Paul Tergeist » 28 févr. 2013 17:15

Je pense que lorsqu'on veut être le plus précis possible,
il faut utiliser le calcul symbolique jusqu'au bout
et seulement à l'évaluation numérique repasser en numérique.
Il y a 10 catégories de personnes dans le monde. Celle qui connait le binaire et l'autre.

Gilles59
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1428
Inscription : 27 oct. 2010 20:46

Re: 96² = ?

Message par Gilles59 » 28 févr. 2013 23:23

Paul Tergeist a écrit :Je pense que lorsqu'on veut être le plus précis possible,
il faut utiliser le calcul symbolique jusqu'au bout
et seulement à l'évaluation numérique repasser en numérique.
Tout à fait ! ca permet une précision _absolue_ (mais des formulation par fois complexe)
C'est ce que j'aime bien avec le CAS de la 50G
Casio FX-502P /602P / 603P / FX180P+ / FX4000P / TI57 / TI66 / TI74 Basicalc / TI95 Procalc / HP12C / HP15C LE / DM41L / HP 30B / HP39GII / HP 48SX USA / 49G / 49G+ / 50G / 50G NewRPL / HP Prime / Oric 1 / Amstrad CPC 6128+

Zorback
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 13
Inscription : 30 déc. 2007 22:49
Localisation : Aix en Provence

Re: 96² = ?

Message par Zorback » 01 mars 2013 00:18

Bonsoir à tous,

Petite visite sur le forum depuis bien longtemps...

J'ai envie de participer à mon modeste niveau : sur mon PC1245 j'ai l'erreur.

J'aimerais bien essayer sur mon PC1251 (je devine le résultat) mais même avec des piles neuves, il ne veut pas se laisser torturer. Va falloir démonter et regarder dedans.

Salutations

Répondre

Revenir vers « Tous les Pockets »