Objectifs : lgorithmes () Premiers programmes sur calculatrice - passer de la notion d algorithme à la notion de programme - aborder la notion de langage de programmation - s initier à la programmation sur un exemple simple - retenir la programmation de quelques instructions simples sur calculatrice (lire, afficher, affecter) Introduction à la programmation On appelle programme la traduction d'un algorithme dans un langage donné pour une machine donnée (calculatrice ou ordinateur). codage algorithme programme On utilise un langage de programmation. On se propose de taper le programme ci-dessus sur calculatrice. Pour cela, il faut utiliser le mode «programme» de la calculatrice qui permet d'accéder à l éditeur de programme dans lequel on tape les différentes instructions du programme. ller dans prgm. ller dans NOUV (nouveau programme). ppuer sur entrer. L écran affiche : PROGRMME Nom = Écrire MOYENNE ppuer sur entrer. On va écrire les instructions ligne par ligne. Programmation sur calculatrice TI À la fin d une ligne, appuer sur entrer pour passer à la ligne suivante. Chaque langage de programmation est différent. On adapte facilement un algorithme rédigé en langage structuré. Exemple On considère l algorithme suivant qui permet de calculer la moenne de deux nombres a et b. Cet algorithme est rédigé en langage naturel. Variables : a, b, m : réels Entrées : Saisir a Saisir b Programme : Input " = ", Commentaires Pour Input, taper pgrm puis aller dans E/S (entrées et sorties) ou I/O suivant le modèle de calculatrice. Pour les guillemets, taper alpha +. Pour le signe =, aller dans tests (taper nde math ). La virgule s obtient par la touche correspondante (5 e ligne en partant du bas, e touche en partant de la gauche). Il faut bien mettre une virgule et pas un point. Traitement : m prend la valeur Sortie : fficher m a b : Input " = ", : (+)/ M Pour la flèche, aller dans sto (stockage). Cette touche de stockage se situe au-dessus de la touche on. Taper sans espace. Cet algorithme fait intervenir 3 variables (a, b, m). : Disp M Pour Disp, taper pgrm puis aller dans E/S. 1
Pour quitter, taper nde mode. Pour exécuter le programme, on retourne dans pgrm puis aller dans EXEC. Version plus simple (pour TI) Programmation sur calculatrice Casio (Casio Graph 35 +, Graph 65, Graph 85) Entrer dans le mode programmation par MENU. Choisir le menu programmation PRGM. On obtient la liste des programmes déjà entrés s il en a. Programme : Prompt : Prompt : (+)/ M Pour créer un nouveau programme. Choisir NEW par F3. Le curseur clignote entre deux crochets : entrer le nom donné au programme (les touches sont automatiquement en mode alphabétique). Valider par EXE. Pour entrer la liste des instructions. Écrire les instructions ligne par ligne. À la fin d une ligne, taper EXE pour passer à la suivante. : M PROMPT : sert à demander à l utilisateur de rentrer une valeur ller dans I / O (Entrées et sorties) Pour obtenir PROMPT, taper prgm puis sélectionner E S (entrées sorties) à l aide des flèches puis prompt à l aide des flèches puis appuer sur enter. Variante qui simplifie encore : Programme Programme " = "? " = "? Commentaires Pour les guillemets, taper LPH F. Pour le signe =, taper SHIFT. ). Pour entrer la flèche d affectation, utiliser la touche. Pour le point d interrogation, aller dans CHR (caractères) en utilisant la touche F6 puis dans SYL (smboles) et sélectionner le point d interrogation. Le smbole est représenté par EXE sur la calculatrice Casio. : Prompt, : (+)/ M (+) M : M M Taper SHIFT VRS (PRGM). 3 4
Pour sortir du mode de programmation. Taper EXIT plusieurs fois jusqu à revenir à l écran donnant la liste des programmes. Pour exécuter le programme. Dans le menu Programmation, sur l écran comportant la liste des programmes, sélectionner sur fond noir à l aide des flèches de montée et de descente et le programme à exécuter puis choisir EXE par F1 pour l exécuter. ilan des commandes sur TI 1. Input ou Prompt pour saisir une valeur.. La flèche de stockage pour affecter une valeur. On taper sans mettre d espace. 3. Disp (qui vient de l anglais displa, afficher) ou rien pour afficher. Pour effacer un programme, il faut aller dans la gestion des programmes. Pour cela, appuer sur la touche nde puis + (Mémoire), ensuite : efface puis 7 : prgm et entrer pour supprimer le programme sélectionné par la flèche. Comment supprimer un programme? - seconde - mémoire - gestion programmes - programme - enter - supp - oui/non On parle parfois de «code» d un algorithme (ou de code d un programme). Dans la suite des chapitres, on verra l architecture (le squelette) de certains algorithmes très importants. On verra dans la suite quelques procédures très importantes (on parle de procédure algorithmique ou de procédure informatique). 5 6
Exercices de programmation 1 Pour déterminer l équation réduite d une droite définie par deux points On considère deux points x ; et ; x dans le plan muni d un repère. On suppose que. x x La droite () a pour équation réduite x x x x x (démonstration facile). On va nommer X et Y l abscisse et l ordonnée de ; Z et T l abscisse et l ordonnée de. () admet donc une équation réduite de la forme = M x + P où M est le coefficient directeur de la droite et P l ordonnée à l origine. Programme sur calculatrice TI. Ce programme permet de calculer le coefficient directeur et l ordonnée à l origine de la droite (). Donner le nom «EQRED». : PROMPT X : PROMPT Y : PROMPT Z : PROMPT T : T Y / Z X M : (YZ XT)/ (Z X) P : Disp M : Disp P Pour l astérisque, utiliser le signe de multiplication normal. Version plus simple : Disp M : Disp P : Disp M, P Cela affiche : M P Done Programme sur calculatrice CSIO. : PROMPT X, Y, Z, T : (T Y) / (Z X) M : (YZ XT) / (Z X) P : Disp M, P : "X="? X : "Y="? Y : "Z="? Z : "T="? T : (T Y) (Z X) M : (YZ XT) (Z X) P : M : P Commentaires : Le programme ne fonctionne pas lorsque Z = X (car alors Z X = 0 et on ne peut pas diviser par 0). Pour l astérisque, on utilise le signe de multiplication normale. Exemple : On donne les points (4 ; 5) et (10 ; 17). l aide du programme, déterminer le coefficient directeur et l ordonnée à l origine de (). En déduire l équation réduite de (). Pour cela, on rentre 4 pour valeur de X, 5 pour valeur de Y, 10 pour valeur de Z, 17 pour valeur de T. L affichage donne d abord M puis P (M sur une ligne puis P sur l autre ligne). pplication : Dans le plan muni d un repère (O, I, J), on considère les points (7 ; 0), ( 1 ; ) et C(6 ; 7). Réaliser une figure sur papier (très propre, avec les pointillés et les valeurs des coordonnées des points sur chaque axe) ou sur ordinateur grâce à un logiciel de géométrie dnamique. 1 ) Calculer les coordonnées de points I et J, milieux respectifs des segments [] et [C]. ) Déterminer l équation réduite des droites (CI) et (J) (on pourra utiliser le programme réalisé précédemment). 3 ) En déduire les coordonnées du point G, centre de gravité du triangle C. 7 8
Pour déterminer la distance de deux points dans le plan muni d un repère orthonormé On considère deux points x ; et ; x dans le plan muni d un repère orthonormé. F La distance est donnée par la formule : x x. On va nommer X et Y l abscisse et l ordonnée de ; Z et T l abscisse et l ordonnée de. E Z Programme sur calculatrice TI. Ce programme permet de calculer la distance D =. : PROMPT X, Y, Z, T : (Z X) ^ U * : (T Y) ^ V : U + V W : W D : Disp D * On pourrait aussi utiliser la touche «carré» directement. On pourrait raccourcir le nombre d étapes (mais souvent en fait on complique un peu pour gagner en lisibilité, comme souvent dans les algorithmes). Programme sur calculatrice Casio. pplication 1 : "X="? X : "Y= "? Y : "Z="? Z : "T="? T : (Z X) ^ U : (T Y) ^ V : U + V W : W D : D Dans le plan muni d un repère orthonormé (O, I, J), on donne les points ( 6 ; 5), ( ; 3), C(0 ; ), D(6 ; 0), E(0 ; 5), F(0 ; 10), G(6 ; 1) et Z(8 ; 4). On part de pour aller à Z mais seuls deux chemins sont permis : - passer par, C, O et D ; - passer par E, F et G (voir figure). J O C À l aide du programme précédent modifié de telle sorte qu il affiche la distance au carré (et non la distance pour laquelle on obtiendrait seulement une valeur approchée, ce qui serait moins précis au moment où l on ferait la somme ; noter les résultats de la calculatrice au fur et à mesure sur une feuille) : - calculer la longueur l 1 du chemin CODZ ; - calculer la longueur l du chemin EFGZ ; - en déduire le chemin le plus court. Reprendre le travail précédent en calculant les valeurs exactes de l 1 et l. pplication Dans le plan muni d un repère orthonormé (O, I, J), on considère les points ( 1 ; 1), (1 ; ) et C(3 ; ). Utiliser un logiciel de géométrie pour faire la figure. 1 ) Placer ces points dans un repère orthonormé. ) Dessiner le triangle C. 3 ) Que peut-on conjecturer sur ce triangle? 4 ) Calculer les mesures des longueurs des côtés [], [C], et [C]. 5 ) Le triangle C est-il équilatéral? isocèle? rectangle? 6 ) En déduire la position du centre I du cercle circonscrit C au triangle C. 7 ) Calculer les coordonnées de I, et donner la valeur du raon de C. Tracer C. 8 ) On considère le point E(3 ; 1). Démontrer que E est un point de C. * On peut éventuellement plutôt utiliser le programme qui affiche le carré de la distance de chaque segment. I G D x Recopier le graphique. 9 10
3 Pour déterminer une équation cartésienne de droite On considère deux points x ; et ; On suppose que. x dans le plan muni d un repère. La droite () a pour équation cartésienne ou x x x x x 0 x x x x x 0 (démonstration facile). On va nommer X et Y l abscisse et l ordonnée de ; Z et T l abscisse et l ordonnée de. () admet donc une équation cartésienne de la forme U x + V + W = 0. Programme sur calculatrice TI. Démonstration : x et,, x sont deux points quelconques distincts tels que x x M(x, ) est un point quelconque du plan. M. Programme sur calculatrice CSIO. : PROMPT X, Y, Z, T : T Y U : X Z V : Y Z X T W : Disp U, V, W : PROMPT X, Y, Z, T : T Y : X Z : Y Z X T C : : : C M () si et seulement si si et seulement si j O x x x x x x et M x x sont colinéaires 0 si et seulement si x x x x 0 si et seulement si x x x x x si et seulement si x x x x x x si et seulement si x x x x x (on développe le déterminant) x 0 0 0 Une équation cartésienne de () s écrit : On transforme cette équation en équation réduite. x a b x x x x x (1). 0 x par hpothèse donc (1) est successivement équivalente à : x x x x x x x x x x x x x x x x x x x m p i x x c 11 1
4 Réaliser un programme sur calculatrice permettant de calculer la moenne géométrique de deux réels positifs ou nuls saisis en entrée. On rappelle que la moenne géométrique de deux réels a et b positifs ou nuls est donnée par m ab. 6 La formule suivante, appelée formule de Héron, donne l aire S d un triangle connaissant les longueurs a, b, c des côtés : S p p a p b p c 5 Voici un programme de calcul : où p désigne le demi-périmètre du triangle c est-à-dire a b c p ). Choisir un nombre au départ. jouter 1. Calculer le carré du résultat obtenu. Lui soustraire le carré du nombre de départ. Écrire le résultat final. Réaliser un programme qui permet de rentrer les longueurs des côtés d un triangle et qui affiche en sortie son périmètre et son aire. 1 ) En exécutant ce programme à la main, déterminer le résultat final lorsque le nombre de départ est : 1 ; 4 ; 10 ; 5 ;,1 ; 3,6. ) On a écrit en langage naturel un algorithme correspondant à ce programme de calcul. Variables : x,, z réels Entrée : Saisir x Traitement : prend la valeur x + 1 prend la valeur z prend la valeur Sortie : fficher z x Recopier cet algorithme. a) Quelles sont les variables de cet algorithme? b) Quelle est la variable qui prend pour valeur le nombre de départ? c) Dans quelle variable le résultat final est-il stocké? 3 ) a) Saisir le programme correspondant sur calculatrice. b) Tester le programme avec les nombres de la question 1 ). c) Le nombre de départ étant x, exprimer le résultat final en fonction de x. 13 14
1 Programme équation de droite pplication Corrigé 5 Choisir un nombre au départ. jouter 1. Calculer le carré du résultat obtenu. Lui soustraire le carré du nombre de départ. Écrire le résultat final. ) (CI) : = x 5 ; (J) : = x + 7 3 ) G(4 ; 3) 1 ) On fait tourner l algorithme «à la main». Programme distance de deux points dans un repère orthonormé pplication 1 : 1 er trajet : 80 C 5 CO 4 OD 36 DZ 0 l1 80 5 4 36 0 4 5 5 6 5 7 5 8 l1 3,65... e trajet : E 36 EF 5 FG 117 GZ 13 ) Entrée Sortie 1 3 4 9 10 1 5 9,1 5, 3,6 6, Variables : x,, z réels Entrée : Saisir x Traitement : prend la valeur x + 1 prend la valeur z prend la valeur x l 36 5 117 13 6 5 3 13 13 11 4 13 l 5,4... Sortie : fficher z l l 1 Donc le premier trajet est plus court que le deuxième. La somme des carrés des longueurs n est pas égale à la longueur totale au carré. On rentre la somme des racines carrées d un coup pour obtenir le résultat le plus précis possible. Recopier cet algorithme. a) Quelles sont les variables de cet algorithme? Les variables de cet algorithme sont x,, z (réels). b) Quelle est la variable qui prend pour valeur le nombre de départ? La variable qui prend pour valeur le nombre de départ est x. c) Dans quelle variable le résultat final est-il stocké? Le résultat final est stocké dans la variable z. 15 16
3 ) a) Saisir le programme correspondant sur calculatrice. b) Tester le programme avec les nombres de la question 1 ). c) Le nombre de départ étant x, exprimer le résultat final en fonction de x. x x 1 x 1 17