Correction algo BAC S Nouvelle Calédonie (novembre 2013)
Posted: 02 Mar 2014, 02:33
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.
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:
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:
Voici l'algorithme modifié pour nous produire le tableau à recopier:
(*) 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:
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:
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:
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.
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
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.
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
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
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:
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:
K | W | U | V |
0 | 2 | 10 | |
1 | 2 | 14/3 | 8 |
2 | 14/3 | 52/9 | 43/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:
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.
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