Pb calculette

Bonjour,

Un collègue, prof de mécanique, m'a demandé si je pouvais lui expliquer pourquoi les calculatrices donnent parfois des résultats très différents pour la même syntaxe :

-2^2^3 donne 64 ou -4 ou -256 selon les modèles de calculatrice.
1/2p donne 0,5p ou 1/(2p) selon les modèles.

On peut toujours dire aux élèves qu'il faut sécurisr les calculs avec des parenthèses, mais j'ai l'impression que ce genre de considération est actuelllement plus du niveau prof que du niveau élève. (??)

Le calcul sur les puissance ne me surprend guère, j'imagine que c'est un reste de notation polonaise qui traine dans les programmes, mais je suis plus surpris par le point de colle que la calculatrice met articiellement entre le 2 et le p.

Si quelqu'un avait des explications élémentaires sur ce problème, en sachant quelles sont les motivations de ceux qui programment les calculatrices (j'ai constaté récement que les programmes des calculatrices étaient adaptés aux programmes en vigueur dans chaque pays et que les boutons sont donc adaptés aux "besoins" des élèves)

Je serai personnellement tenté de faire l'hypothèse que la nouvelle syntaxe du 1/2p est là pour "aider" ceux qui ne mettaient pas des parenthèses, mais dans ce cas, cela me parait inquiétant...

Cordialement.

Réponses

  • Bonjour.

    Il y a les mêmes difficultés dans le choix de programmation des calculs que dans l'interprétation. Par exemple 2^2^2 a plusieurs interprétations suivant qu'on utilise la règle traditionnelle (celle de 5-1-3 =4) de faire les opérations de même niveau dans l'ordre d'apparition ou la convention $a^{b^c}=a^{(b^c)}$. Il ne peut pas y avoir uniformité, car cette dernière règle est locale (utilisée en France). Et contrevient aux règles générales.
    Par contre 1/2p désigne toujours le nombre 1/2 multiplié par p. Si tu as une calculette qui donne 1/(2p), jette la (ou fais-la changer aux élèves), ça ne peut être qu'un facteur d'erreurs. Certains vendeurs sont capables de dire que c'est une amélioration, ce n'est qu'un gadget malsain.

    Les fabricants adaptent effectivement les calculettes en fonction des programmes scolaires, mais ne sont pas toujours bons en maths (la vieille touche EXP pour donner l'exposant de 10 dans la notation scientifique a heureusement à peu près disparu, mais on trouve toujours des $\cos^{-1}$ pour $\arcsin$ !!).

    Finalement, il est essentiel de convaincre les élèves que la calculatrice ne "calcule" pas : C'est l'utilisateur qui calcule, et s'il utilise sa calculette sans connaître le mode d'emploi, il aura des résultats faux par sa faute; pas parce que la calculette "calcule faux".

    Pour ma part, je n'ai jamais conseillé officiellement des calculettes, mais déconseillé certains modèles qui bloquaient les élèves (en stats par exemple), en informant officiellement le fabricant.

    Cordialement.
  • Merci Gerar0.

    Je suis tout à fait du même avis que toi.
    Je ne savais pas qu'aucune convention n'était fixée pour les puissances de puissances.

    Le 1/2p reste mystérieux, je me dit que c'est une syntaxe "exceptionnelle" à différencier peut-être de 1:2p dans la tête du programmeur. C'est vrai que c'est source d'erreur.

    Bien cordialement.
  • Bonsoir j'ai un devoir en mathématiques où on me demande le résultat et la somme des chiffres du calcul (7-5)fois(16-9).
    Problème je ne c est [sais] pas la différence entre résultat et somme des chiffres.
    Pouvez-vous m'aider svp.
    PS : je ne c est [sais] pas faire le signe fois c'est donc pour ça que j'ai écrit fois)
    mrc [Merci] d'avance.
  • Bonjour Lili.

    Sais tu écrire la somme des chiffres de 2014 ?

    e.v.
    Personne n'a raison contre un enfant qui pleure.


  • Bonsoir,

    Il y a aussi d'autres problèmes. Par exemple, pour les TI, ent(1/3*3) donne 0 alors que le résultat est correct chez les Casio.

    Didier
  • @D526 : par curiosité, que donnent ces deux calculettres pour ent(-1/3*3) ?
  • Cette anomalie peut être très gênante quand on utilise la partie entière (dans ce cas, PartEnt en français ou Int en anglais chez les ti) dans des programmes!

    Didier
  • Pour TI, PartEnt(-1/3*3) donne le bon résultat (-1) alors que PartEnt(1/3*3) donne 0.

    Je n'ai pas de Casio sous la main mais je pense qu'elle doit donner le bon résultat.

    Didier
  • Dans le même genre, EXCEL donne erreur si on rentre la formule =RACINE(0.64-0.8^2), ce qui est plutôt surprenant pour un logiciel comme Excel.

    Didier
  • Mon tableur open office donne aussi erreur si on rentre =RACINE(0.64-0.8^2); par contre, il calcule juste avec =RACINE(0,64-0,8^2). C'est une simple question de notation des décimaux.

    Cordialement.
  • Cette anomalie peut être très gênante quand on utilise la partie entière (dans ce cas, PartEnt en français ou Int en anglais chez les ti) dans des programmes!

    Il ne s'agit probablement pas d'une anomalie, mais du comportement normal du aux erreurs d'arrondis lors des calculs en virgule flottante. a= 1/3; b=3*a ne va jamais donner exactement b=1 en calcul numérique.

    Il est probable que la TI arrondisse vers 0, ce qui expliquerai le résultat. En arrondissant vers 0, 1/3 est codé (en 32 bit) par

    0 (+) 01111101 (-2) [1.]01010101010101010101010 (1.3333332538604736328125)

    Ce qui nous donne comme valeur exacte 1.3333332538604736328125*2^(-2) = 0.333333313465118408203125

    Multiplié par 3, on tombe sur 0.999999940395355224609375, dont la partie entière vaut 0.


    Le nombre suivant, qui est codé (en 32 bit) par

    0 (+) 01111101 (-2) [1.]01010101010101010101011 (1.33333337306976318359375)

    Va avoir pour valeur exacte 0.3333333432674407958984375, et multiplié par 3, va donner 1.0000000298023223876953125


    Selon la méthode d'arrondi choisie, la valeur de la partie entière serra différente
  • Oui, Tryss, ton analyse est correcte.

    Mais, là où TI se trompe, Excel trouve le bon résultat et là où Excel se trompe, Ti trouve le bon résultat. Casio trouve le bon résultat pour les deux calculs.

    Un logiciel bien fait ne devrait pas se tromper pour des calculs aussi simples (autrement dit, les concepteurs auraient dû corriger depuis longtemps ces anomalies).

    Didier
  • De même, il vaut savoir quand on fait des programmes sur calculatrices qu'à la fin du programme, la dernière valeur de i est 11 et pas 10 dans :

    Pour i allant de 1 à 10
    blablabla
    Fin du Pour

    surtout si après le Pour, il y a autre chose utilisant i.

    J'ignorais ceci il y a encore peu jusqu'à ce que l'un de mes programmes ne fonctionne pas!

    Didier
Connectez-vous ou Inscrivez-vous pour répondre.