Algorithmique – Partie1 [Vidéo]
Depuis quelques années, la notion d’algorithmique s’est introduite dans les programmes scolaires de mathématiques au lycée et les sujets de bac en proposent de plus en plus fréquemment aux élèves.
Pour s’y préparer les lycéens doivent s’y mettre dès la Seconde.
Je te propose une première vidéo d’initiation à l’algorithmique afin d’avoir de bonnes bases pour pouvoir mieux progresser par la suite.
Concevoir un algorithme te paraît compliqué ? Tu ne sais pas comment t’y prendre ? Tu détestes ça ?
Si tu veux avoir de bonnes bases en algorithmique, je te conseille de visionner cette première vidéo. Tu apprendras à créer un algorithme simple, d’abord en langage naturel, puis sur ta calculatrice TI ou Casio.
Je t’invite à visionner la 2ème vidéo d’algorithmique afin de t’entraîner à créer des algorithmes simples par toi-même !
Penses-tu que concevoir un algorithme est trop difficile pour toi ? Laisse ta réponse dans les commentaires juste en-dessous !
Afficher la transcription texte de la vidéoFermer la transcription texte de la vidéo Salut à toi et bienvenue sur bossetesmaths.com, ici Corinne Huet. Dans cette première vidéo sur l’algorithmique je vais te donner une initiation à l’algorithmique. Alors en gros qu’est-ce qu’on va faire ? Hé bien d’abord je vais t’expliquer ce qu’est un algorithme, comment il est structuré, quelles sont les instructions de base dans un algorithme et grâce à tout ça tu pourras comprendre et concevoir un algorithme par toi-même. Alors je te dis à tout de suite ! Alors tout d’abord c’est quoi un algorithme ? Sache d’abord que le mot algorithme vient du nom d’un grand mathématicien persan qui s ‘appelait Al-Kwharizmi. Il était surnommé le père de l’algèbre et le mot algorithme vient donc de son nom. Alors qu’est-ce qu’un algorithme ? Ca va être une suite finie d’instructions, finie c’est le contraire d’infinie donc ça veut dire que ça s’arrête. Donc c’est une suite finie d’instructions que l’on applique à un nombre fini de données dans un ordre précis pour arriver à un résultat. Je vais te montrer dans un instant quelques exemples mais voici la définition d’un algorithme et ce qu’on va appeler l’algorithmique c’est le domaine qui étudie les algorithmes. Je te propose de voir tout de suite des exemples d’algorithmes, tu va vois que tu en côtoies souvent. Tout d’abord dans la vie de tous les jours par exemple dans une recette de cuisine : je suppose que comme moi tu adores la mousse au chocolat, je te propose que l’on regarde la recette ensemble. Alors voici les ingrédients : 3 oeufs, 100g de chocolat, 1 sachet de sucre vanillé. En algorithmique c’est ce qu’on appelle les données. Regardons ensemble la préparation de la recette : instruction 1 faire ramollir le chocolat dans une terrine, instruction 2 incorporer les jaunes et le sucre, instruction 3 battre les blancs en neige ferme, instruction 4 les ajouter délicatement au mélange à l’aide d’une spatule et instruction 5 mettre au frais 1 heure ou 2 minimum. Donc tu vois qu’une recette de cuisine va partir d’un certain nombre de données, ici les ingrédients et va faire se succéder un nombre fini d’étapes pour arriver à un résultat qui est nôtre mousse au chocolat. Donc ça c’est un algorithme que tu côtoies tous les jours dans ta cuisine. Voici un deuxième exemple d’algorithme que tu as déjà côtoyé à savoir un programme de construction géométrique, je vais te montrer ça tout de suite sur le logiciel Géogebra. Voici le logiciel Géogebra et voici le programme de construction géométrique que l’on demande d’exécuter. Tout d’abord placer deux points A et B dans le plan : je vais ici sur nouveau plan, un point A et un point B. Puis tracer le cercle de centre A passant par B, je vais ici sur cercle, centre point, de centre A passant par B. Puis tracer le cercle de centre B passant par A, puis tracer la droite passant par les points d’intersection C et D de ces deux cercles : alors je vais aller d’abord tracer les points d’intersection de ces deux cercles puis la droite qui passe par ces deux points. Puis appeler E le point d’intersection de cette droite avec la droite (AB). Donc je vais tracer d’abord la droite (AB) et le point demandé est le point d’intersection de ces deux droites et voici le point E. Donc tu vois, cette suite d’instruction fait que ce programme de construction géométrique est un algorithme aussi, tu as déjà vu ça très certainement. Alors un autre exemple d’algorithme, ce qu’on appelle traditionnellement un programme de calcul, tu as du déjà voir ça auparavant, je te propose l’exemple qui provient du diplôme national du brevet de 2007, le voici : tout d’abord choisir un nombre, je vais prendre comme exemple le nombre 1, lui ajouter 4 donc 1 + 4 = 5, multiplier la somme obtenue par le nombre choisi : je vais multiplier mon 5 par 1 ça fait 5, ajouter 4 à ce produit : 5+4=9, écrire le résultat : mon résultat c’est 9. Alors l’avantage d’un programme de calcul c’est qu’il faudrait le faire fonctionner avec un nombre de départ qui n’est pas 1 ou 2 ou 5 mais un nombre quelconque x donc si je lui ajoute 4 il va devenir x+4, si je multiplie la somme obtenue x+4 par le nombre choisi, ça va me faire fois x. C’est à dire x au carré + 4 x puis j’ajoute 4 à ce produit donc je vais me retrouver avec x au carré + 4 x + 4 et donc au final ici tu reconnais l’identité remarquable x +2 au carré. Donc si tu fais bien gaffe, si tu fais cet exemple avec plusieurs nombres de départ tu verras qu’à la fin le nombre obtenu c’est un carré : ici 9 c’est le carré de 3. Donc ça, c’est un autre algorithme classique que tu as déjà vu auparavant. Enfin, un autre algorithme que tu as déjà vu je crois en classe de troisième : l’algorithme d’Euclide. Je ne sais pas si tu t’en rappelles mais en gros si tu prends deux nombres entiers, par exemple 9 et 21, hé bien l’algorithme d’Euclide te permet grâce à des divisions successives, de calculer le PGCD de ces deux nombres, le plus grand commun diviseur de ces deux nombres ici sera égal à 3. Donc c’est un autre exemple d’algorithme classique que tu as vu auparavant. Donc tu vois, on a pleins d’exemples d’algorithme que l’on côtoie souvent et maintenant tu sais qu’ils ont le nom d’algorithme. Il faut savoir maintenant comment est structuré un algorithme pour pouvoir en concevoir toi même. Un algorithme est composé de trois étapes, il y en a pas quatre il n’y en a pas deux il y en a bien trois. La première étape c’est l’étape d’initialisation alors en quoi consiste-t-elle ? Hé bien dans cette étape tu va déclarer les variables, c’est à dire tous les éléments qui vont entrer en jeu tu vas les déclarer ici, tu va entrer les données sur lesquelles tu vas travailler puis tu vas pouvoir passer à la deuxième étape qui est l’étape du traitement. Dans l’étape de traitement on va effectuer les calculs, on va faire ce qu’on appelle des affectations, on va faire des tests, on va faire des boucles. Puis troisième étape : la sortie, c’est l’étape dans laquelle on va afficher les résultats. Alors un algorithme, pour qu’il puisse être lu par tout le monde, il doit être écrit en langage naturel. Toi ton langage naturel, comme moi, c’est le français donc la première étape quand tu vas écrire un algorithme ce sera de l’écrire en langage naturel. Puis ce langage naturel tu pourras le mettre dans un langage de programmation. Ce que j’appelle un programme c’est un en fait la traduction de ton algorithme pour être compris par une machine c’est à dire un ordinateur ou une calculatrice. Sur ordinateur il existe de nombreux logiciels de programmation, le plus simple d’entres eux à ma connaissance c’est le logiciel Algobox que tu peux télécharger librement, gratuitement sur internet et en ce qui concerne la calculatrice, on travaillera nous soit sur une TI 82 ou 83 soit sur une Casio graph 35 dans laquelle tu iras chercher le menu programme. Pour bien comprendre cette notion d’algorithmique tu dois savoir ce que c’est qu’une variable en algorithmique. Alors l’ordinateur ou la calculatrice qui effectue un algorithmique doit stocker les données entrées par l’utilisateur et les résultats de ses calculs dans un endroit, dans une zone de sa mémoire. C’est cette zone de sa mémoire que l’on appellera une variable. En général elle est nommée par une lettre, par exemple on peut dire que cette petite boîte notée a est la variable a et cette petite boîte qui est notée m est la variable m. Qu’est-ce qu’on va en faire ? Hé bien, dans ces boîtes son va mettre des valeurs, par exemple ici la variable a prendra la valeur 2 et la variable m prendra la valeur 5 par exemple. Cette procédure s’appelle la procédure d’affectation dont on va parler tout de suite. Alors voici les instructions de bases qui composent un algorithme : tout d’abord les entrées ceux sont les instructions que tu mettras dans la toute première phase, la phase d’initialisation de ton algorithme et en langage naturel les entrées vont s’écrire de la manière suivante : entrer a, entrer b. Qu’est-ce que cela signifie ? Hé bien on va demander à l’utilisateur d’entrer deux valeurs qui seront stockées dans les variables a et b, dans les petites boîtes a et b. Parfois on peut dire aussi : saisir a, saisir b ou bien lire a et lire b. Deuxième instruction de base c’est l’affectation et en général cette affectation tu la feras dans la phase de traitement de ton algorithme. En quoi ça consiste ? J’ai ici une variable m, une petite boîte m et je vais dire qu’elle prend la valeur a+b sur 2. Qu’est-ce que ça signifie ? En fait, a et b sont des nombres que la calculatrice ou l’ordinateur connait puisque ceux sont des nombres entrés par l’utilisateur au départ, donc on peut calculer a+b sur 2 et ce résultat on va le ranger dans la variable petit m donc dans la petite boîte m on va ranger le résultat de a+b sur 2. Ca s’appelle l’affectation, on va affecter la valeur a+b sur 2 à la variable m. Enfin, troisième instruction : les sorties, donc ça se fera évidemment à l’étape finale et ça consiste à afficher les résultats donc ici on va d’afficher m. En gros qu’est-ce qui va être affiché à l’écran ? Il va être affiché le contenu de la variable m c’est-à-dire que ça ne sera pas affiché le mot m sur l’écran mais ça sera réellement affiché le résultat de ce qui est dans la variable m. Alors tu apprendras plus tard qu’il existe d’autres instructions de base : tout d’abord l’instruction conditionnelle si alors sinon puis la boucle pour puis la boucle tant que, ça fera l’objet d’une autre vidéo. On a donc construit notre 1er algorithme en langage naturel : entrer a, entrer b, m prend la valeur (a + b) / 2, afficher m. Donc c’est super alors maintenant est-ce que tu serais capable de me dire ce que fait cet algorithme ? Donc il demande au départ d’entrer 2 nombres a et b et on va calculer (a + b) le tout sur 2, alors que représente ce nombre pour toi ? Est-ce que tu es d’accord que ça représente la moyenne des nombres a et b ? Tu prends tes 2 nombres, tu les additionnes, tu les divises par deux ça fait donc la moyenne donc on l’appelle m et à la fin on affiche m donc cet algorithme en fait il affiche la moyenne de 2 nombres a et b entrés au départ par l’utilisateur. Je vais te montrer maintenant comment est-ce qu’on le traduit dans un logiciel de programmation donc ici on va d’abord le traduire sur la calculatrice TI puis on fera le même travail sur calculatrice Casio. Alors voici ma calculatrice TI, je vais aller sur ma touche programme ici donc j’ai au choix exécuter, éditer, nouveau et bien je vais faire un nouveau programme. Créer un nouveau donc oui, entrer. Le nom du programme, alors pour accéder aux lettres de ton clavier tu dois être en alpha (alors ici comme y’a un a qui clignote, on est déjà en alpha donc je vais directement taper les lettres au clavier). Alors ce programme, il donne la moyenne de 2 nombres donc je vais l’appeler moyenne MOY. Donc mon programme est prêt, on a 2 petits points ici qui vont signifier que la 1ère ligne peut être tapée donc je vais d’abord dire d’entrer A. Alors en TI, entrer a ça se dit prompt a alors je vais dans programme de nouveau, je vais sur la flèche de droite et tu vois ici le mot prompt c’est le numéro 2 et je vais mettre prompt a donc alpha A, entrer alors une petite chose hein ta calculatrice elle gère uniquement les lettres en majuscule, il n’y a pas de minuscules. Deuxième ligne avec 2 petits points ici : entrer B et bien même chose, ça se dira prompt b donc je vais de nouveau sur programme, flèche de droite, menu numéro 2, prompt et alpha B, entrer. Donc ma 3ème ligne est prête ici : m prend la valeur (a + b) / 2 donc pour écrire cette procédure d’affectation, « prend la valeur » ça va se faire avec la flèche qui est ici qui est stockage par contre tu commenceras toujours par dire que (a + b) / 2 va être stocké dans m donc on y va alors attention ici a + b doit être entre parenthèses comme ceci et je vais le stocker dans m, entrer. Enfin quatrième et dernière ligne : afficher m; hé bien je retourne sur programme et afficher en anglais ça se dit disp donc flèche de droite et je cherche disp, c’est le numéro 3 donc je vais mettre disp M, entrer. Voilà les 4 lignes de mon programme, il est prêt à être exécuté donc je vais quitter (je fais 2nd mode) et je vais y retourner, programme donc c’est le numéro 1 donc je vais faire tout en haut exécuter, fais entrer pour l’exécuter. Voilà il me demande un nombre A par exemple je vais entrer 10, puis il me demande d’entrer un nombre B je vais mettre 12. Alors avant que je fasse entrer, est-ce que tu es d’accord que la moyenne entre 10 et 12 c’est 11 ? Alors on y va, entrer voilà il me répond que ma moyenne est bien égale à 11. Voyons maintenant ce qu’il se passe sur CASIO, alors ici j’ai un modèle GRAPH 85. Si tu as une GRAPH 35 c’est exactement pareil. Dans le menu principal tu choisis le menu PRGM, entrer donc ici j’ai aucun programme et je fais nouveau par la touche F3. Le nom de mon programme, hé bien il va s’appeler moyenne donc mon clavier est en alphanumérique donc j’ai déjà les lettres qui sont activées donc MOY, entrer. Voilà mon programme MOY est prêt. Alors 1ère ligne de mon programme, il faut entrer a donc pour écrire ça sur CASIO je vais ici d’abord soit aller dans caractère pour chercher les guillemets mais en fait on n’en a pas vraiment besoin puisque tu vois ici en rouge qu’ils y sont donc je vais faire alpha, hop j’ai mes guillemets je vais taper A, je referme les guillemets, je vais mettre un point d’interrogation donc toutes les commandes vont être dans ce qui est ici en jaune PRGM donc je vais shift barre, je prends le point d’interrogation sur la touche F4 et là la flèche je vais stocker ça dans A. Je fais entrer, ça me fait une espèce de petite flèche retour ici. Donc c’est comme ça que tu dois taper sur CASIO pour demander d’entrer a. C’est un peu compliqué mais il n’y a pas le choix donc entre guillemets tu mets A, point d’interrogation et tu stockes avec la flèche dans A. Enfin afficher M : hé bien pour afficher M, tu vas tout simplement écrire M avec ce petit triangle rectangle ici, touche F5 et tu fais entrer. Voilà les 4 lignes de ton programme, on va quitter EXIT, il est ici dans la liste de programme et on va exécuter. Donc tu vois là il commence, il me demande un nombre A donc je vais mettre par exemple 15 entrer. Il me demande un nombre B donc par exemple 10. Est-ce que tu es d’accord que la moyenne entre 10 et 15 c’est 12.5 ? Je fais entrer et voilà il m’affiche 12,5. Alors une dernière question pour terminer : comment peut-on modifier cet algorithme pour qu’il calcule et affiche cette fois-ci non plus la moyenne de 2 nombres a et b mais la moyenne de 3 nombres a, b et c entrés par l’utilisateur ? Donc évidemment si tu réfléchis au départ on demande d’entrer a, d’entrer b et bien à ce stade de l’algorithme on va aussi demander d’entrer le 3ème nombre c. Donc comment est-ce que tu vas calculer la moyenne de tes 3 nombres a, b et c ? Es-tu d’accord que le calcul se fait de la manière suivante ? On additionne les 3 nombres et on divise le tout par 3 donc on va dire que m, qui est censé représenté la moyenne, prend la valeur a plus b plus c le tout sur 3 et à la fin évidemment on affiche m le résultat. On y va sur calculatrice ? Alors on y va sur TI, on retourne dans le programme alors ici pour retourner dans le programme MOY et pour le modifier on va faire éditer. Alors entrer a, entrer b ça c’est ok; alors à ce stade de l’algorithme je voudrai insérer une ligne pour pouvoir écrire prompt C c’est-à-dire entrer c. Donc pour insérer une ligne tu vois ici en jaune insérer donc je vais faire ici 2nd sup et je vais faire entrer. Voilà ça m’insère une ligne vierge donc je retourne dans programme, flèche de droite, le numéro 2 prompt et la lettre C. Je continue, ici je dois faire A + B + C donc attention si je met un +, tu vois ça va effacer la parenthèse donc je suis obligé de faire des insertions donc 2nd Sup, je mets C, j’insère la parenthèse ensuite insérer la division et ici je divise par 3; je stocke ça dans M et enfin afficher M; voilà j’ai modifié mon algorithme alors je quitte et je vais l’exécuter donc exécuter, entrer. Alors je vais prendre A = 10, B = 12, C = 14. Est-ce que tu es d’accord que la moyenne de ces trois nombres c’est 12. Donc entrer voilà il me répond 12. Sur CASIO je vais à nouveau sur le menu PRGM, j’ai mon programme moyenne ici pour le modifier je vais faire EDIT sur la touche F2. Donc entrer A c’est okay, entrer B c’es bon et ici je vais mettre ça à la ligne et revenir à la ligne précédente pour entrer C. Donc je le tape, ici je te rappelle que le point d’interrogation il faut faire shift il se trouve ici en F4 que je stocke dans C. Hé bien voilà cette 1ère vidéo d’initiation à l’algorithmique est à présent terminée. Bravo si tu es allé jusqu’au bout ! J’espère qu’elle t’aura permis de comprendre, de créer voire même de modifier toi-même un algorithme simple. Je te propose d’aller voir les autres vidéos d’algorithmique pour pouvoir t’exercer. Je te dis à très bientôt sur bossetesmaths.com
ALGORITHMIQUE PARTIE 1 : INITIATION.
Même chose pour entrer B donc alpha, les guillemets, on va mettre B, on referme les guillemets, le point d’interrogation et on stocke ça dans B, entrer.
M prend la valeur (a + b) / 2 hé bien on va juste écrire que (A + B) / 2, alors attention à mettre les parenthèses, va être stocké dans M.
Pour le calcul, on fera A +B + C que l’on va diviser par 3; on stocke ça dans M et on a fini. Voilà mon programme est modifié, je vais faire EXIT et ici je vais l’exécuter sur F1. Il me demande un nombre A, je vais mettre 5, un nombre B je vais mettre 10 et un nombre C je vais mettre 15; la moyenne de ces trois nombres est-ce que tu es d’accord que ça fait 10 ? Entrer, voilà il nous affiche bien que ça fait 10.
Salut !
Coucou !
Merci beaucoup pour cette vidéo !
Je ne l’ai pas encore visionnée en entier faute de temps mais rien que le début m’a permis d’apprendre un tas de choses ! J’ai bien aimé la comparaison avec la recette de mousse au chocolat : cela est concret et permet donc de comprendre plus facilement !
Dès que j’ai du temps, je termine de visionner cette vidéo qui va m’être bien utile étant donné que je n’ai pas trop compris les algorithmes (je n’ai fais que 3 exercices depuis le début de l’année…) et que j’ignorais la signification de chaque terme : tes explications sont parfaites !
Encore merci et bonne soirée 🙂
J’espère que ces vidéos d’algorithmique pourront aider de nombreux élèves.
A venir : les boucles (conditionnelles avec « Si Alors Sinon », et les boucles « Tant que » et « Pour »).
Travaille bien et à très bientôt !
J’en suis persuadé 😉
Où là ! J’ai hâte de voir cela car je n’ai jamais entendu de ces fameuses boucles…
Bonne soirée.
Alors à bientôt pour les boucles !
Quand il y a des boucles, il faut éviter que les choses tournent en rond.
Merci beaucoup Ca avance, enfin! 🙂
Alors super !
c est vraiment cool
Merci.