Les nouvelles technologies pour l’enseignement des mathématiques
Intégration des TICE dans l’enseignement des mathématiques

MathémaTICE, première revue en ligne destinée à promouvoir les TICE à travers l’enseignement des mathématiques.

Bac S : Amérique du Nord 28 Mai 2019
brève mise en ligne le 30 mai 2019

N.D.L.R : cette brève est complétée par un courrier de Bernard Parisse, au bas de la page.

Les sujets obligatoire et spécialité sont sur le site Math93 avec une question à laquelle les élèves ne peuvent répondre qu’en utilisant Python.

En effet, dans l’exercice 3, question 4)b. l’énoncé est : « Déterminer le plus petit entier naturel n à partir duquel tous les termes de la suite $(u_n)$ sont inférieurs à $10^{−15}$. » or cette suite $(u_n)$ est définie par $u_0 = 1$ et $u_{n + 1} = u_n - ln(1 + u_n)$.

 Avec la calculatrice TI83 Premium CE et le programme suivant :

PROGRAM:AMNORD19
:1→U
:0→N
:While U>=10^(-P)
:U-ln(1+U)→U
:N+1→N
:Disp N,U
On peut obtenir le résultat suivant :
15→P
prmAMNORD19
1     0.3068528194
2     0.0392310006
3     7.499834542E-4
4     2.810970561E-7
5     -4.35222E-15

Le programme s’arrête puisque $u_5 < 10^{−15}$, sauf que cela est faux puisque quelques questions auparavant on a montré que $u_n > 0, \forall n \in \mathbf{N}$.
Sans utiliser de programme, en entrant :

1→U

puis en répétant :

U-ln(1+U)→U

on obtient le même résultat. Idem dans l’application tableur de la calculatrice ou en mode suite.

 Avec la calculatrice CASIO 35+EII et les instructions suivantes :

1→U
U-ln(1+U)→U

on obtient :

0.3068528194
0.0392310006
7.499834542E-04
2.810970537E-07
4.3248768E-14
4.3248768E-14

On constate que ce ne sont pas les mêmes résultats qu’avec la TI à partir de $u_4$, mais ils sont eux aussi erronés et la calculatrice reste sur l’affichage d’une constante (environ égale à 4.3248768E-14), supérieure à $10^{−15}$ donc le programme (le même que pour la TI, ci-dessus), qui donne les mêmes résultats, supérieurs à $10^{−15}$, boucle et l’élève ne peut pas répondre ... Le module suite de la calculatrice donne le même résultat.

 Avec la calculatrice Numworks et les instructions suivantes :

1→U
U-ln(1+U)→U

on obtient :

0.3068528
0.039231
0.0007499835
0.0000002810971

Puis on obtient le message « La mémoire de travail est pleine. », l’élève ne peut pas répondre ... Mais il y a une parade, avec le module suite, si on définit la suite récurrente, on obtient $u_5 = 3.957336e-14$ et $u_6 = 4.942405e-17$ (Pas sûr qu’un élève y aura pensé ...).

Dans toutes ces calculatrices (avec une mise à jour récente), Python est disponible et le programme suivant peut être saisi :

  1. from math import log
  2. def s(p):
  3.     u=1
  4.     n=0
  5.     while u>=10**(-p):
  6.         u=u-log(u+1)
  7.         n=n+1
  8.         print(n,u)
  9.     return n

Télécharger

Ce qui donne sur un ordinateur :
  1. >>> s(15)
  2. 1 0.3068528194400547
  3. 2 0.03923100059562018
  4. 3 0.0007499834542035178
  5. 4 2.8109705414345546e-07
  6. 5 3.9573363731490506e-14
  7. 6 4.9424054835715754e-17
  8. 6

Télécharger

La réponse attendue est donc 6, qu’aucune des calculatrices précédentes n’a permis d’obtenir, sauf à utiliser leur module Python (ou le module suite pour la Numworks) ...
Avec quelques différences par rapport à ce qu’il se passe avec Python sur un ordinateur :

 Avec la CASIO : $u_1, u_2, u_3, u_4$ identiques, puis
$u_5 = 3.9573\underline{29798055797}e-14$ et $u_6 = 4.9\underline{33119884809045}e-17$, mais le programme renvoie le rang 6.

 Avec la Numworks : RAS ! C’est identique à l’ordinateur (avec une décimale en moins pour $u_4, u_5, u_6$ ...).

Donc le programme renvoie le rang 6.

 Avec la TI : Le message suivant s’affiche : « [Exéc] et [Shell] ne sont pas disponibles maintenant » ... Mais je dispose du TI-Python que je connecte et j’obtiens alors : $u_1, u_2, u_3, u_4, u_5$ identiques, puis $u_6 = 4.94240548357157\underline{6}e-17$, mais le programme renvoie le rang 6.

Conclusion : Dans toutes les calculatrices le programme Python renvoie la réponse 6, attendue dans le sujet, mais sans Python, leur réponse est erronée ou impossible, il n’est pas sûr que les élèves aient été préparés à cela .
B.Clerc

Ps. Un courrier de Bernard Parisse à propos de ce qui précède montre que la situation est encore plus complexe : la valeur de u6 calculée par Python est totalement fausse, donc c’est pur hasard que le rang cherché, 6, soit correct !

Il propose une solution correcte, mais hors de portée d’un élève de Terminale.

Voici le courrier de Bernard Parisse :

Un commentaire de Bernard Parisse