En exercice 2 du
sujet de Maths Spécialité qui vient de tomber aujourd'hui pour les candidats au BAC S 2013 dans les lycées français d'Amérique du Nord on a droit à de l'algorithmique, pour une fois non pas avec des suites mais avec de l'arithmétique!
Jetons-y un oeil ensemble ce soir:
Question A)1)On nous demande donc de faire fonctionner l'algorithme et d'indiquer les valeurs de variables à chaque étape - c'est-à-dire de réaliser une trace de l'algorithme.
Une calculatrice peut ici grandement nous aider!
Prenons par exemple une TI-82 à TI-84, et commençons par y programmer l'algorithme original:
L'algorithme utilise 3 variable a, b, c, ainsi qu'une boucle 'tant que'.
Nous allons modifier le programme afin d'afficher l'état des variables à chaque étape.
Il suffit en gros au choix:
- d'insérer un affichage des 3 variables en fin de boucle et avant la boucle
- d'insérer un affichage des 3 variables en début de boucle et après la boucle
C'est ce dernier choix que j'applique ici:
La calculatrice nous décrit alors toute seule la réponse qu'il nous suffit maintenant de mettre au propre:
[tableborder=1]
Instruction | a | b | c |
Affecter à c la valeur 0 | | | 0 |
Demander la valeur de a | 13 | | 0 |
Demander la valeur de b | 13 | 4 | 0 |
Affecter à c la valeur c+1 | 13 | 4 | 1 |
Affecter à a la valeur a-b | 9 | 4 | 1 |
Affecter à c la valeur c+1 | 9 | 4 | 2 |
Affecter à a la valeur a-b | 5 | 4 | 2 |
Affecter à c la valeur c+1 | 5 | 4 | 3 |
Affecter à a la valeur a-b | 1 | 4 | 3 |
[/table]
La même chose est réalisable sur calculatrice Casio Graph/Prizm:
On peut aussi bien évidemment utiliser une TI-Nspire ou TI-89/92/Voyage200:
Question A)2)Il s'agit maintenant de comprendre ce que permet de calculer cet algorithme.
Revenons donc au programme original et voyons un petit peu ce qu'il affiche sur l'exemple de l'énoncé:
3 et 1 sont respectivement les quotient et reste de la division euclidienne de 13 par 4, avec 13=4*3+1.
Cet algorithme permet donc de calculer les quotient et reste de la division euclidienne de a par b.
Quection B)1)Nous souhaitons coder la lettre U.
- Etape 1: La lettre U est associée à m=20
- Etape 2: 9m+5=9*20+5=180+5=185
Or, 185=7*26+3.
Donc, p=3. - Etape 3: C'est la lettre C qui est associée à p=3
La lettre U une fois codée devient donc la lettre C.
Quection B)2)Modifions donc l'algorithme afin d'effectuer directement ce codage, c'est-à-dire de donner le reste de la division euclidienne de 9m+5 par 26:
- Code: Select all
Variables:
a est un entier naturel
b est un entier naturel
c est un entier naturel
* m est un entier naturel
Initialisation:
Affecter à c la valeur 0
* Demander la valeur de m
* Affecter à a la valeur 9*m+5
* Affecter à b la valeur 26
Traitement:
Tant que a>b
Affecter à c la valeur c+1
Affecter à a la valeur a-b
Fin de tant que
Sortie:
* Afficher a
Programmons-le sur notre TI-82 à TI-84 afin de vérifier son bon fonctionnement:
Le code 3 indique bien la lettre D - c'est bon!
On vérifie de même sur Casio Graph/Prizm ou TI-Nspire/89/92/Voyage200:
A bientôt! Liens:BAC S 2013: Annales des sujets inédits corrigés