Seconde – 2009/2010 Lycée Émile Duclaux Premiers algorithmes A. Premier programme de calcul permettant le calcul des valeurs d’une fonction 𝑓 : Choisir un nombre 𝑥. Calculer 𝑦 égal au carré de 𝑥. Calculer 𝑧 égal à 4 fois 𝑥. Calculer 𝑓(𝑥) égal à 𝑦 − 𝑧 + 5. 1. Tester ce programme de calcul en partant de trois nombres 𝑥 différents de votre choix. 2. En calculant avec la lettre 𝑥, exprimer 𝑓(𝑥) en fonction de 𝑥. B. Second programme de calcul permettant le calcul des valeurs d’une fonction 𝑔 : Choisir un nombre 𝑥. Calculer 𝑦 égal à 𝑥 − 2. Calculer 𝑧 égal à 𝑦 2 . Calculer 𝑔(𝑥) égal à 𝑧 + 1. 1. Tester ce programme de calcul en partant de trois nombres 𝑥 différents de votre choix. Que constatez-vous ? Quelle conjecture peut-on faire ? 2. En calculant avec la lettre 𝑥, exprimer 𝑔(𝑥) en fonction de 𝑥. 3. Prouver la conjecture faite à la question précédente. On appelle algorithme tout procédé permettant de résoudre un problème, à condition que ce procédé puisse être décrit en plusieurs étapes bien identifiées. Le mot « algorithme » est une déformation du nom du mathématicien arabe Al-Khwarizmi. Les deux programmes de calculs ci-dessus sont donc des algorithmes permettant de calculer les valeurs d’une fonction. C. Écriture d’algorithmes Un tel programme de calcul est appelé un algorithme. En prenant exemple sur les parties A et B ci-dessus, écrire trois algorithmes permettant de calculer les valeurs de la fonction 𝑓 définie sur ℝ par 𝑓(𝑥) = (𝑥 − 5)2 − 7. Seconde – 2009/2010 Lycée Émile Duclaux Une fonction en deux morceaux Le téléphone portable de Toto ne fonctionne plus. Fou de rage, il le projette par sa fenêtre, située à 4 mètres au-dessus du sol. Le téléphone touche le sol à 2 mètres du mur de la maison et rebondit. Le graphique ci-contre trajectoire du téléphone. représente la La fonction 𝑓 correspondant à cette trajectoire est définie sur l’intervalle [0; 4] par : { 𝑓(𝑥) = 4 − 𝑥 2 𝑓(𝑥) = −0,2𝑥 2 + 2𝑥 − 3,2 si 𝑥 ∈ [0; 2[ si 𝑥 ∈ [2; 4] 1. Écrire un algorithme permettant de calculer la valeur de 𝑓(𝑥) pour une valeur de 𝑥 donnée. Attention ! Cet algorithme doit Trajectoire du téléphone retourner la bonne valeur de 𝑓(𝑥) quelle que soit la valeur de 𝑥 choisie. 2. Voir au tableau la traduction de cet algorithme dans le logiciel Algobox. Seconde – 2009/2010 Lycée Émile Duclaux 3. Voici maintenant sa traduction en programme pour la calculatrice TI-83 : Étudier ce programme et noter la signification des différentes commandes utilisées : Input, If…Then…End, Disp. 4. En s’inspirant de l’exemple ci-dessus, écrire un algorithme permettant de calculer les valeurs de la fonction 𝑔 définie sur [0; 10] par : 𝑔(𝑥) = 2𝑥 − 3 si 𝑥 ∈ [0; 4[ { 2 𝑔(𝑥) = 𝑥 − 10𝑥 + 30 si 𝑥 ∈ [4; 10] Vous écrirez l’algorithme en langage naturel, puis vous essaierez de le traduire en langage calculatrice. Seconde – 2009/2010 Lycée Émile Duclaux Traduction de l’algorithme avec Xcas : Traduction de l’algorithme dans Scratch : Tableau comparatif Logiciel Points positifs Rigueur dans l’écriture de l’algorithme Algobox En français Présentation structurée L’étendue des différents blocs est bien visible Logiciel sur mesure Toutes les commandes de calcul Xcas numérique et formel sont utilisables Commandes de programmation en français Scratch Calculatrice Points négatifs Pas un vrai langage de programmation Peu de fonctions mathématiques Lourdeur pour entrer un algorithme un peu long Pas très pratique à utiliser Sortie mal présentée Sourcilleux sur la syntaxe (points virgule, etc) Syntaxe à apprendre Structuration de l’algorithme Aspect gadget ( ?) Comme dans Algobox, pas de syntaxe à Pauvreté des fonctions mathématiques retenir. Imprécision des calculs Rigueur En français L’étendue des différents blocs est bien visible Toujours à disposition Moins puissante pour les boucles un Toutes les fonctions mathématiques peu longues sont utilisables Lourdeur pour entrer les programmes Seconde – 2009/2010 Lycée Émile Duclaux Morale Dans un premier temps, choix de Xcas pour sa richesse mathématique. Préparation du premier sujet, tests abandon de Xcas car l’interface n’est vraiment pas assez simple pour utilisation efficace avec les élèves (ne pas pinailler sur des détails, passer des heures à chercher des erreurs, etc.) Essai avec Scratch : c’est pas mal, mais pour entrer un test du style 𝑥 ≥ 2, il faut entrer 𝑥 > 2 ou 𝑥 = 2. La structuration par blocs est pédagogique et le petit chat peut être une motivation. Avec Algobox : c’est bien. La structuration par blocs est pédagogique. La calculatrice : il ne faut pas s’en passer, car les élèves l’ont toujours et doivent savoir bidouiller avec. Choix final : Algobox + calculatrice pour ne pas perdre du temps avec des détails inutiles. À la rigueur, initier les meilleurs à Scratch, ou leur laisser la possibilité de s’en servir en autonomie pour rendre certains algorithmes en DM ? Garder Xcas pour le calcul formel et peut-être pour l’algo en S ??? Mais pas en seconde.