π
<-

News 2019
June (15)
May (31)
April (25)
March (39)
January (37)

News 2018
October (13)
August (32)
July (23)
June (64)
May (63)
April (45)
March (43)
January (45)

News 2017
October (26)
August (39)
July (52)
June (88)
May (51)
April (43)
March (37)
January (33)

News 2016
October (25)
August (42)
July (34)
June (109)
May (55)
April (34)
March (37)
January (24)

News 2015
October (22)
August (56)
July (22)
June (94)
May (56)
April (32)
March (40)
January (21)

News 2014
October (26)
August (18)
July (23)
June (101)
May (57)
April (59)
March (54)
January (31)

News 2013
October (67)
August (50)
July (43)
June (193)
May (93)
April (102)
March (45)
January (50)

News 2012
October (64)
August (63)
July (53)
June (132)
May (88)
April (73)
March (57)
January (58)

News 2011
October (56)
August (31)
July (27)
June (71)
May (61)
April (32)
March (36)
January (24)

News 2010
October (11)
August (8)
July (14)
June (10)
May (3)
April (3)
March (1)

News 2009
August (3)
July (1)
June (2)
May (1)
April (2)
March (1)

### BAC S 2019 Amérique Nord plante toutes calcs sauf NumWorks

Ce mardi, c'était l'épreuve de Mathématiques du BAC S 2019 en Amérique du Nord.

Petite particularité dans l'exercice 3 sur une suite positive d'écroissante définie par récurrence. En avant-dernière question
B.4.a
, pour une fois il n'était pas demandé d'interpréter, modifier ou compléter un algorithme, mais d'en écrire un intégralement. Un algorithme de seuil, retournant à partir de quel rang les termes de la suite passent en-dessous de
10-p
.

Pour référence, voici l'algorithme en question transcrit en
Python
:
Code: Select all
from math import *def algo(p):  n=0  u=1.  while u>10**-p:    u=u-log(1+u)    n=n+1    print(n,u)  return n

La question suivante
B.4.b
et dernière en était l'application, demandant la réponse de l'algorithme pour
p=15
. Heureusement cela pouvait être obtenu sans algorithme pour ceux qui avaient bloqué sur la question précédente.

Pour référence, avec
$u_5\approx 3,95\times 10^{-14}$
et
$u_6\approx 7,80\times 10^{-28}$
, la réponse attendue est
n=6
.

Cela n'a peut-être l'air de rien mais ce fut en pratique une hécatombe pour nos calculatrices graphiques et programmables, puisque la quasi totalité a soit donné des résultats aberrants, soit n'a retourné aucun résultat partant alors en boucle infinie, et ce que l'on code l'algorithme ou utilise l'application dédiée aux suites !
Que l'outil calculatrice ait été utilisé pour chercher ou confirmer le résultat, de quoi gaspiller dans tous les cas de précieuses minutes à chercher en vain ce qui peut bien clocher !

Les
Casio Graph
programmées dans leur langage historique ne renvoyaient jamais de réponse, partant en boucle infinie. Le problème est visualisable dans l'application
Récurrence
, la suite devenant stationnaire à partir du rang
n=5
sans avoir atteint le seuil souhaité. Pareil si tu utilisais l'application
KhiCAS
sur
Graph 90+E
ou sur
Graph 35+E II
. Pareil également sur
fx-CP400
,
fx-92+ Spéciale Collège
ou encore
Lexibook GC3000FR
.
Par contre, pas de problème si tu codais l'algorithme avec l'application
Python
intégrée aux
Graph 90+E
et
Graph 35+E II
, ou avec l'application
CasioPython
rajoutée...

Les
TI-82/83/84
programmées dans leur langage historique renvoyaient un résultat faux,
n=5
. Le tableau de valeurs de la suite nous permet là encore de comprendre ce qui se passe, la suite devient stationnaire à partir du rang
n=5
en franchissant le seuil demandé, mais avec une valeur aberrante puisque négative alors que nous sommes sur une suite positive selon les questions précédentes.
Par contre, aucun problème si tu codais l'algorithme pour le module externe
TI-Python
via l'application
de la
...

Sur la
HP Prime
programmée dans son langage historique, pareil on obtient
n=5
. L'application
Suite
permet de constater le problème, avec une première valeur négative aberrante au rang 5 avant que la suite ne devienne stationnaire.
Par contre, aucun problème si tu codais l'algorithme en utilisant l'étiquette #cas indiquant à l'interpréteur d'utiliser le moteur CAS pour les calculs, étiquette d'ailleurs obligatoire si tu décidais d'opter pour l'écriture à la
Python
...

Sur
TI-Nspire
programmée dans son langage historique on obtient par chance
n=6
, juste parce que la première valeur aberrante négative est bien tombée. Le problème est là encore visualisable avec le tableau de valeurs de la suite.
Par contre, aucun problème du tout si tu codais l'algorithme pour l'application
MicroPython
...

Mais qu'est-ce que c'est que ça, un sujet sponsorisé
NumWorks / Python
?...

Pour comprendre un peu mieux ce qui se passe, rappelons que pour les nombres non entiers nos calculatrices travaillent en virgule flottante, soit au format
$\pm M\times 2^{E-E_{min}}$
avec
$M\in [1;2[$
.

Or, toutes les calculatrices n'accordent pas le même nombre de bits pour coder la mantisse
M
de ces nombres, ce qui limite leur nombre de chiffres significatifs.

C'est-à-dire que pour tout calcul donnant un résultat non décimal, notre calculatrice commet une petite erreur. Et lorsque l'on réutilise ce résultat dans un nouveau calcul, comme c'est notamment le cas dans le cadre d'algorithmes sur des suites définies par récurrence, il peut arriver que cela empire l'erreur, jusqu'à donner des résultats aberrants...

Voici la transcription en
Python
d'un algorithme permettant de calculer les nombres de bits et de chiffres significatifs utilisables pour les mantisses de flottants, ceci en appelant respectivement precm(2) et precm(10) :
Code: Select all
def precm(b):  k,b=0,float(b)  while 1+b**-k-1>0:    k+=1  return k

Précisons que selon les modèles de calculatrices, le test devra être réalisé deux fois, car bien souvent l'environnement
Python
utilisera un moteur de calcul spécifique totalement déconnecté du reste de l'écosystème de la calculatrice.

Voici le petit classement de différents modèles/configurations en termes de précision binaire et décimale qui en découle, où nous allons de plus indiquer en rouge lorsque cela ne permet pas de répondre correctement au sujet qui nous intéresse ici :
 modèles bits chiffressignificatifs Graph 90+E / fx-CG50 (appli Python)Graph 35+E II (appli Python)Graph 35/75/85/95 USB / fx-9750GII/9860G (appli CasioPython)NumWorks (appli Python)TI-83 Premium CE Edition Python (appli Python)TI-83 Premium CE (module externe TI-Python)TI-Nspire (appli MicroPython) 53 16 HP Prime (vue CAS) 48 15 NumWorks (hors appli Python)Graph 90+E / fx-CG10/20/50 (appli KhiCAS)Graph 35+E II (appli KhiCAS)TI-82/85/86/89/92 / Voyage 200TI-Nspire (hors appli MicroPython) 45 14 TI-81 41 13 fx-92 Collège 2D / Spéciale Collège / fx-ES/EXGraph 90+E / fx-CG50 (hors applis Python/KhiCAS)Graph 35/75/85/95 USB / fx-9750GII/9860G (hors appli CasioPython et KhiCAS)fx-CG10/20 (hors appli KhiCAS)Sharp EL-9900/9950TI-83 Premium CE Edition Python (hors appli Python)TI-83 Premium CE (sans module externe TI-Python)TI-83 / TI-83 PlusTI-82 Stats/Plus/AdvancedTI-73/76.fr/84 40 13 HP Prime (hors vue CAS) 38 12 Lexibook GC3000FR 35 11 TI-Primaire Plus 34 11 TI-Collège Plus / 30/34/36 MultiView 32 10 fx-CP400/CG500 / Classpad 31 10

Voilà donc l'explication, ça semble clair, c'est un problème de précision. Les modèles/configurations qui calculent sur 45 bits et moins sont incapables de fournir une réponse correcte. Hors la plupart des modèles ne dépassent pas les 40 bits dans le contexte de leur moteur de calcul historique.

A partir de 48 bits et plus, c'est bon. Les implémentations
Python
pour nos calculatrices utilisent presque toutes pour la mantisse le standard à 53 bits dit en
"double précision"
, ce qui explique qu'elles ne soient pas concernées par le problème.

La
NumWorks
est un cas particulier puisque même en dehors de son application
Python
et donc limitée à 45 bits, elle trouve des valeurs cohérentes et fournit ainsi le bon résultat. Peut-être que cela vient du fait que la calculatrice n'évalue pas directement les expressions sur 45 bits, mais commence par faire appel à son moteur de calcul littéral intégré, et ce même lorsque l'on fait intervenir des nombres en écriture décimale.

Il est certes déjà arrivé que certains sujets de BAC posent des questions qui dérangent nos calculatrices, mais uniquement dans le cadre d'une conjecture et pour enchaîner ensuite sur une série de questions qui vont démontrer que la calculatrice s'est trompée, ce qui en sera la conclusion.

Ce n'est clairement pas le cas ici puisqu'il s'agit de la dernière question de l'exercice. C'est donc une grave erreur de l'auteur du sujet qui sans doute n'a pas fait l'effort de tester son énoncé avec une calculatrice
'normale'
comme celles dont disposent la majorité des candidats, mais avec la
NumWorks
ou plus probablement directement dans l'environnement
Python
de son ordinateur. Grave erreur de ne pas avoir pensé aux différences que cela impliquait au niveau du moteur de calcul numérique !
A la décharge de l'auteur du sujet, le fait que l'institution pousse à fond au
Python
à tous les étages.

Les candidats ici équipés en calculatrices
NumWorks
ont donc été avantagés, ainsi que la minorité qui a utilisé le
Python
sur un autre modèle pour résoudre l'exercice.
Même si l'on doit pouvoir trouver des candidats passionnés par le
Python
, ainsi que des enseignants de Terminale qui n'ont fait travailler que le
Python
cette année, rappelons que le premier programme imposant officiellement le
Python
n'est arrivé que pour la rentrée 2017 en Seconde. Il s'agit donc probablement d'une minorité qui a ainsi été privilégiée
(ce qui ne veut absolument pas dire que c'est moins grave)
. Les candidats au BAC 2019 n'auraient jamais dû être ainsi discriminés selon leur affinité avec le
Python
puisque ce langage n'était pas une exigence des textes les concernant.

Ce qui est à craindre c'est que ce cafouillage ne soit pas isolé, et que d'autres sujets à venir n'aient été testés qu'en
Python
sur l'ordinateur des auteurs. Dans ton intérêt nous ne pouvons donc que te conseiller si tu ne l'as pas déjà fait d'opter sans attendre pour une configuration conforme aux nouveaux programmes du lycée et donc aux habitudes des concepteurs de sujets, et de prendre l'habitude de coder tes algorithmes systématiquement en
Python
et non plus dans le langage historique de ta calculatrice.

Des solutions qui ne te coûteront pas le moindre centime existent :
Mises à jour logicielles gratuites :

Si tu as une
Casio Graph 90+E / fx-CG50
, mets-la à jour en version
3.20
et utilise dorénavant l'application
Python
intégrée pour coder :

Si tu as une
Casio Graph 35+E II
, mets-la à jour en version
3.10
et utilise dorénavant l'application
Python
intégrée pour coder :
logiciel de mise à jour
Graph 35+E II 3.10
pour
Windows

Si tu as une
Casio Graph 75/85/95
, installe et utilise l'application
CasioPython
.

Si tu as une
Casio Graph 35+
, installe-lui le système
Graph 75 2.05
, puis procède comme au point précédent.

Si tu as une
TI-Nspire
, installe
Ndless
, puis installe et utilise l'application
MicroPython
.

Si tu as une
HP Prime
, mets-la à jour en version
14181
et code désormais en cochant toujours
CAS
:

Si tu as une
Lexibook GC3000FR
jette-la par la fenêtre plutôt que de recopier ce qu'elle peut bien te raconter, c'est gratuit et c'est dans ton intérêt.

Que tu ne rentres pas dans les cas ci-dessus ou que tu aies peur de te lancer dans des manipulations à la veille de l'examen, voici maintenant les solutions nécessitant un achat, limitées aux plus pertinentes et aux moins chères :
Mises à jour matérielles payantes :

Si tu as la
, rajoute-lui le module externe
TI-Python
qui ne coûte vraiment pas grand chose et installe l'application
associée :

Si tu as une
TI-82/84
ou autre
TI-83
, il te faut une
. Aucun problème de prise en main, tu y retrouveras les mêmes touches, menus et interfaces. Tu peux au choix prendre :

Si tu as une
TI-Nspire CX II
, remplace-la par un ancien modèle
TI-Nspire CX
,
TI-Nspire CM
ou
TI-Nspire
monochrome puis procède comme au bloc précédent.

Si tu as une
Casio Graph 25+/35+
, remplace-la au choix par une
Graph 75/85/95
puis procède comme au bloc précédent. Aucun problème de prise en main, mêmes touches, menus et interfaces.

Si tu as la
Casio Graph 35+E
, la
Graph 35+USB
ou une
Graph 25/75/85/95
, remplace-la au choix par :

Si tu as une
Casio fx-CG10/20
, remplace-la par une
Graph 90+E
. Prise en main immédiate puisque mêmes touches, menus et interfaces.

Ou sinon suis le message que fait passer
(involontairement ?...)
l'auteur du sujet et achète une
NumWorks
, même si selon nous un changement pour un modèle au fonctionnement complètement différent à la veille de l'examen n'est pas une bonne idée.

Téléchargement
:
sujet et corrigés

### BAC 2019 : sujets et corrigés Amérique du Nord + Liban dispo

Le BAC 2019 a déjà démarré pour les candidats des lycées français d'Amérique du Nord et du Liban.

La plupart des sujets sont déjà disponibles avec corrigés, ou le seront très prochainement.

Une superbe occasion de prendre le temps de t'entraîner en conditions d'examen, et de vérifier ainsi si tu es au point.

Liens :

• Sujets + corrigés
BAC S / ES / L 2019
• Sujets + corrigés
BAC S / ES / L 2020 anticipé

### Mystère de la rosace Graph 35+E II ; quelle construction ?

Pour la rentrée 2019,
Casio
t'apporte un superbe boîtier avec sa nouvelle
Graph 35+E II
au
design
à la croisée des Mathématiques, de la géométrie et des arts. Dans un article précédent nous te révélions les secrets derrière la forme originale de son pavé directionnel : une empreinte façon taille de pierre précieuse avec table octogonale et couronne à 24 facettes.

Mais ce n'est pas son seul secret dans ce style, puisque le verso une fois correctement éclairé nous fait également étinceler une superbe rosace.

Un soin tout particulier apporté à la décoration, du jamais vu sur un modèle d'entrée de gamme ! Et ceci tout en apportant en prime matière à chercher/discuter passionnément en cours de Maths à la rentrée !

Mais quel est donc le secret de sa construction ?

Le manuel de la
Graph 35+E II
nous apporte des représentations de la rosace. Même si elles sont bien évidemment utiles à la compréhension, notons qu'elles ne sont pas tout-à-fait exactes. Si tu regardes bien, tu noteras que plusieurs segments ont été oubliés à divers endroits, alors que pourtant bien présents sur la calculatrice.

On dirait que cette rosace présente un pavage en losanges, losanges dont les deux diagonales sont tracées.

On peut donc avancer l'hypothèse d'une construction par superposition de deux éléments :
• une toile façon araignée pour l'ensemble des diagonales
• une rosace rhombique pour le pavage en losanges

La rosace rhombique d'ordre
n
se construit en partant de
n
losanges adjacents centraux, que l'on entoure de couches de losanges identiques jusqu'à-ce que le polygone obtenu soit convexe.

Et si on programmait cette construction pour voir ? Pas évident pour la rosace rhombique avec cette définition, mais on peut donner une autre méthode de construction équivalente, par rotation d'un polygone équilatéral
(à côtés de même longueur)
et même régulier si l'ordre
n
est pair. Une définition beaucoup plus facile à coder en dans un langage orienté tracé comme le
Scratch
ou le
Logo
.

Prenons donc notre
Casio fx-92+ Spéciale Collège
, puiqu'elle intègre un langage orienté tracé. La calculatrice est munie d'un écran matriciel de 192×63 pixels. Le langage en question permet de contrôler une zone graphique de 192×47 pixels. Par contre dans ce langage nous ne contrôlons que 7 variables, et ne pouvons avoir au mieux que 3 niveaux d'imbrication de blocs. Nous nous contenterons donc de ne tracer que les diagonales radiales des losanges. Voici ce que ça donne de l'ordre 3 à 7.

Ça ressemble peut-être au centre de la rosace de
Casio
, mais il va nous falloir aller plus loin. Or, nous commençons à être un peu à l'étroit sur cet écran.

Passons donc sur
Casio Graph 35+E II
afin d'avoir davantage de place sur son écran de 128×64 pixels. La calculatrice ne dispose pas d'origine d'un langage orienté tracé. Mais nous pouvons rajouter l'application
KhiCAS
qui donne accès à un langage
Python
disposant d'un module tortue qui convient. La zone graphique parcourue par la tortue est de plus défilable et zoomable. Voici ce que ça donne de l'ordre 5 à 9.

Visiblement, l'écran n'est relativement pas bien plus grand. Nous sommes toujours à l'étroit, et le tracé monochrome commence même à devenir fouilli. Un autre problème est que pour des raisons de mémoire, l'application
KhiCAS
limite la tortue à 256 déplacements consécutifs. Raison pour laquelle nous ne traçons toujours que les diagonales radiales.

Passons donc sur
Casio Graph 90+E
afin d'avoir davantage de place ainsi que de la couleur grâce à son écran de 400×228 pixels. Nous allons en profiter pour utiliser une couleur unique par polygone parcouru, afin de laisser une trace de la méthode construction. Voici ce que ça donne de l'ordre 9 à 13.

Ah, ça commence à ressembler non ? Toutefois l'application
KhiCAS
limite la tortue à 666 déplacements consécutifs. Donc nous ne pouvons toujours pas rajouter les diagonales non radiales, sinon cela va limiter considérablement l'ordre de la rosace.

Petite infidélité pour un article
Casio
mais pas d'autre choix à ce jour pour creuser le secret de la
Graph 35+E II
. Sortons donc la
NumWorks
avec son écran de 320×240 pixels. La calculatrice dispose d'un langage
Python
intégré avec module
turtle
. La tortue est ici limitée à une zone graphique de 320×222 pixels, mais cela devrait amplement nous suffire. Ici pas de limitation au nombre de déplacements de la tortue, donc nous allons enfin pouvoir tracer toutes les diagonales des losanges. Voici ce que ça donne de l'ordre 13 à 17.

Ça ressemble énormément, non ? Notons d'ailleurs que pour
n
grand on se rapproche visiblement de la rosace classique, construite non pas par rotation d'un polygone mais d'un cercle.

Alors, qu'en penses-tu ? La rosace de la
Casio Graph 35+E II
est-elle construite selon la définition de la rosace rhombique ou pas ? Si oui, de quel ordre ? Si non, quelle construction les 'designers' de
Casio

Téléchargements
:

Crédits images externes
:

### Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium CE

Le module externe
TI-Python
permet à ta
d'exécuter des scripts
Python
.

Nous avions déjà vu que le module externe
TI-Python
pour ta
:
• était bien modeste en capacités, et utilisait en conséquence une implémentation
Python
assez légère,
CircuitPython
d'
• qu'il était possible de recompiler une version un peu plus étoffée de
CircuitPython
, notamment avec la gestion des nombres complexes et le module
cmath
associé, mais que c'est difficile à maintenir ou faire évoluer tellement on se retrouve à la limite des capacités matérielles
• que l'utilisation de tels
firmwares
non officiels n'était pas sans inconvénients, puisque l'application
côté calculatrice vérifie le
firmware
du module externe, et le remplace si il ne lui plaît pas

Ce week-end, nouveau triple exploit de le magicien.

Il a eu l'idée de rajouter dans son module externe
TI-Python
une
pyboard
ESP8266
, carte de développement
Python
qui d'origine fait tourner une implémentation
MicroPython
beaucoup plus complète. Le
TI-Python
quant à lui est reprogrammé avec un
firmware
le faisant se comporter comme un pont série, relayant alors différents messages
UART
entre la
et la carte
ESP8266
.
Techniquement, ce sont les points de tests
TP5
et
TP6
au dos de la carte du
TI-Python
qui sont mis à contribution en tant respectivement que
RX
(réception)
et
TX
(émission)
.

Plus précisément, le
firmware
officiel du
TI-Python
n'est ici pas remplacé. Le
firmware
alternatif est en fait programmé et amorcé dans la zone de stockage de données qui est de toutes façons inutile dans cette configuration, puisque c'est la carte
ESP8266
qui fait tout le travail. Donc quand l'application
de la
tente de vérifier le
firmware
dans la mémoire
Flash
du
TI-Python
elle le trouve et n'y voit que du feu, ne comprenant pas que ce
firmware
qui reste bel et bien présent en mémoire aux mêmes adresses n'est pas celui qui est amorcé.

Mais ce n'est pas tout. Suivant le chemin des cartes de développement, de plus en plus de
Pyboards
disposent d'une antenne sans-fil exploitable en
WiFi
et/ou
Bluetooth
, et c'est le cas de l'
ESP8266
. Comme démontré dans la vidéo qui suit, depuis un ordinateur tu peux donc te connecter en
WiFi
sur l'
ESP8266
, et ainsi par extension envoyer des données sans fil sur ta
, même en mode examen :

Source
:
https://zardam.github.io/post/ti83-python-2/ via viewtopic.php?f=10&t=22632&p=242477#p242477
Code source
:
https://github.com/zardam/tipythonserial

-
Search
-
Featured topics
1234
-
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !

-
Featured files

-
Stats.
884 utilisateurs:
>798 invités
>80 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
(English / Français)
Banque de programmes TI
ticalc.org
(English)
La communauté TI-82
tout82.free.fr
(Français)