Page 1 of 1

Correction algo BAC S Nouvelle Calédonie (novembre 2013)

Unread postPosted: 02 Mar 2014, 02:33
by critor
Intéressons-nous ce soir à l'algorithme tombé en novembre 2013 à l'épreuve de mathématiques du BAC S en Nouvelle Calédonie.


On nous demande donc de réaliser une sorte de trace simplifiée de l'algorithme, avec les états des variables lors d'étapes importantes.

C'est certes réalisable en papier-crayon en déroulant les instructions une par une mentalement, mais également à la calculatrice graphique, méthode que nous allons détailler ici.



Il suffit en effet de rajouter quelques instructions d'affichages bien placées afin d'obtenir le tableau demandé en plus du résultat. :bj:

L'algorithme s'articule donc autour d'une boucle tant que, et le corps de la boucle devra donc accueillir une instruction d'affichage de l'état des variables.
La seule question restant en suspens est de savoir où placer cet affichage, en début de boucle ou en fin de boucle?

Comme N est initialisé à 2, K à 0 et incrémenté de 1 dans la boucle, et que de plus la condition de poursuite de la boucle est K<N, nous ne rentrerons que deux fois dans celle-ci:
  • une première fois avec K=0
  • une deuxième fois avec K=1
Mais notons que l'énoncé nous demande non pas 2 étapes, mais 3 étapes.
Il faudra donc un affichage supplémentaire, soit avant la boucle, soit après la boucle.
Deux possibilités s'offrent donc à nous pour obtenir 3 affichages différents:
  • affichage de l'état des variables avant la boucle, suivi d'un affichage en fin de boucle (effectué deux fois)
  • affichage de l'état des variables en début de boucle (exécuté deux fois), suivi d'un affichage des variables après la boucle
Notons qu'ici, le modèle de tableau fourni grise la variable W (car non encore initialisée) pour le premier état. C'est donc celui-ci qui doit faire l'objet d'un traitement spécifique, et nous retenons donc le premier choix.
Voici l'algorithme modifié pour nous produire le tableau à recopier:
Code: Select all
Variables:
   N est un entier
   U,V,W sont des réels
   K est un entier
Début:
   Affecter 0 à K
   Affecter 2 à U
   Affecter 10 à V
   Saisir N
   Afficher N,U,V   (*)
   Tant que K<N
      Affecter K+1 à K
      Affecter U à W
      Affecter (2U+V)/3 à U
      Affecter (W+3V)/4 à V
      Afficher N,W,U,V   (*)
   Fin tant que
   Afficher U
   Afficher V
Fin

(*) instructions rajoutées

Il nous suffit donc maintenant de programmer cet algorithme sur notre calculatrice graphique.
Notons que vu que les affectations effectuées dans la boucle sur U et V utilisent des divisions, il faudra selon le modèle préciser que l'on veut bien un résultat exact (fractionnaire ici) et non une écriture décimale approchée.


Voici donc un programme traduisant cet algorithme pour TI-76/82/83/84:
Image Image
L'on précise simplement en prime à la calculatrice que nous souhaitons obtenir notre affichage dans la boucle en écriture fractionnaire si possible.

D'où la solution:
KWUV
0210
1214/38
214/352/943/6



Occupons-nous maintenant des autres modèles de calculatrices.

Si vous disposez d'une TI-Nspire/89/92/V200 ou d'une Casio Graph/fx-CG, le programme équivalent ne nécessite rien de particulier et ne pose donc pas de problème:
Image Image Image Image
Sur Casio, chaque affichage de liste suspend l'exécution du programme. L'on peut à ce moment-là naviguer entre les éléments de la liste et en obtenir l'affichage fractionnaire à l'aide de la touche [F<->D].

Sur HP-Prime, c'est beaucoup plus complexe pour obtenir les formes exactes.
D'une part, il faut spécifier l'utilisation du moteur CAS pour chaque affectation risquant de faire des erreurs d'approximations dans la boucle.
D'autre part, les résultats qu'il fournit sont des expressions et ne peuvent être enregistrés dans les variables numériques usuelles à un caractère. Il faut donc déclarer et utiliser des variables à plusieurs caractères. Nous renommerons donc U en UU, V en VV et W en WW.

Image Image

Et enfin ci-contre sur Casio Classpad/fx-CP.
Il suffit juste de préciser en début de programme que l'on souhaite des résultats exacts si possible, avec 'SetStandard'. En l'absence de cette instruction, c'est le mode courant de l'évaluateur de programmes qui est utilisé, mode dont on ne connaît donc pas l'état à priori.



Téléchargement : BAC S 2014 - Annales des sujets inédits 2013-2014