Cours 2 bases dalgorithmique Niveau Licence ptrochimie deuxime
Cours 2 : bases d’algorithmique Niveau : Licence pétrochimie – deuxième semestre Université du 20 aout 55 – Skikda
1 -Définitions : 1 -1 -Définitions du terme « algorithme » : Le mot algorithme signifie étymologiquement le nom d’un mathématicien arabe du moyen âge : Al. Khawarizmi, il a été le premier a décrire une méthode claire pour la résolution d’équation en 825. Cours 2 : bases d’algorithmique
1 -Définitions : 1 -2 -Définitions de l’algorithme : Un algorithme est une séquence finie d’instructions faite pour être exécutée dans le but de résoudre un problème précis, nous retiendrons qu’un algorithme est une séquence d’instructions exécutées de façon logique mais non intelligente. Cours 2 : bases d’algorithmique
1 -Définitions : 1 -2 -Définitions de l’algorithme : Logique parce que la personne (ou la machine) qui exécute les instructions sera capable de facilement comprendre et exécuter sans erreur ni ambigüité chacune des instructions. Non intelligente parce que la personne qui exécute l’algorithme n'aura qu'à suivre toutes les instructions, dans l'ordre pour arriver au résultat Cours 2 : bases d’algorithmique sans avoir a comprendre la méthode de solution.
1 -Définitions : 1 -3 - Utilisation en informatique : L’ordinateur n’est pas intelligent, pour résoudre un problème, vous devez lui donner des successions claires d’instructions à suivre, ici, nous intéresserons uniquement à la façon de combiner des instructions pour résoudre un problème indépendamment des langages de programmation, le but de ce cours est donc de vous apprendre à Cours 2 : bases d’algorithmique créer des algorithmes, a décomposer des calculs
1 -Définitions : 1 -4 - Les avantages de l’utilisation d’algorithme : Un algorithme sert à transmettre un savoir faire. Il décrit clairement les étapes à suivre pour réaliser un travail. Il permet d'expliciter clairement les idées de solution d'un problème indépendamment d'un langage de programmation. Cours 2 : bases d’algorithmique
2 -Composition : 2 -1 - Convention d’écriture : Un algorithme doit être lisible et compréhensible par plusieurs personnes, donc, chaque algorithme doit Titre décrivant être composé des éléments suivants: Algorithme nom_de_algorithme Variables: l’utilité de l’algorithme Le traitement a Liste des variables utilisées dans l’algorithme. effectuer par Début l’algorithme (bloc Instructions d’instruction) Cours 2 : bases d’algorithmique Fin Liste et type de toutes les variables utilisées par l’algorithme
2 -Composition : 2 -2 -Variables – définition: Le premier concept nécessaire pour concevoir un algorithme est celui de variable, une variable est l’adresse d’un emplacement dans la mémoire ou est stockée une valeur, une variable porte un nom, ce nom est laisse au choix du concepteur de l’algorithme, il doit commencer par une lettre et ne pas comporter d’espace, on se sert du nom d’une Cours 2 : bases d’algorithmique variable pour lire sa valeur ou bien pour la modifier.
2 -Composition : 2 -2 - Variables (exemples): étudiant Note 2 université_de_Skikda étudiant universitaire 2013 petrochimie Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables – les types : Nous manipulerons les types couramment rencontrés dans les langages de programmation : Naturel: Entier: Réel: booléen: caractère, chaîne, …. . . Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables – les types (exemple): Vérifiez si les opérations suivantes sont possible, quel type donne le résultat : naturel ………………. ……← naturel + naturel entier ………………. ……← entier - entier réel ………………. ……← réel * réel ………………. ……← naturel / entier réel ………………. ……← entier + réel …………………. …← naturel / réel chaine de ………………. ……← caractère + caractères …………………. …← caractère + chaine de caractères chaine de …………………. …← caractère – chaine de caractères impossible Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables - les opérations : L'affectation est une opération permettant de modifier la valeur d’une variable, la syntaxe de l'affectation est la suivante : nomvariable ← valeur nomvariable est le nom de la variable dont on souhaite modifier la valeur, valeur est la valeur que l’on veut placer dans l’emplacement de la variable, Cours 2 : bases d’algorithmique notez bien que cette valeur doit être de même type
2 -Composition : 2 -2 - Variables - les opérations : On prend la valeur contenue dans la variable A. On prend la valeur contenue dans la variable B. On additionne ces deux valeurs. A ← 5 (affectation) On met ce résultat dans la variable C. A ← A+1 (incrémentation) place la valeur 5 dans la variable A, si A contenait préalablement une valeur, celle-ci est écrasée. On peut aussi affecter à une variable la valeur d’une autre variable : A ← 5 C ← A+B Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables - les opérations : Operations arithmétiques: + , - , * , / : concernant les variables de type numériques (naturel, entier, réel, …. . ). Operations de comparaisons: <, =, >, ≤, ≥, ≠ : concerne les variables de possédant un ordre (numérique ou caractère). Operations logiques: Non, et, ou. Exlusif : s’applique aux operateurs logiques (booléens). Operations sur les caractères et les chaines de caractères: + : la concaténation. Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables - les opérations (exemple): Quelles sont les valeurs des variables après l’exécution des instructions suivantes ? A ← 1 B ← 2 C ← 3 D ←A A ← C+1 B ← D+C C ← D+1 Pour exécuter manuellement les instructions, on construit un tableau nous montrant les valeurs des variables au fil des exécutions : instruction A B C D Début ni ni A ← 1 1 ni ni ni B ← 2 1 2 ni ni C ← 3 1 2 3 ni D ←A 1 2 3 1 A ← C+1 4 2 3 1 B ← D+C 4 4 3 1 C ← D+1 4 4 2 1 Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables - les opérations (exemple): Quel est l’ordre de priorité d’exécution des opérations (A ← 2 et B ← 4 et C ← 3, D ← 5) : A+B-C = 2 + 4 – 3 = 6 – 3 = 3 A+B*C = 2 + 4 * 3 = 2 + 12 = 14 (A+B)*C = (2+4) * 3 = 6 * 3 = 18 A/B-C = 2 / 4 – 3 = - 10 / 4 A*B + A*C = 2 * 4 + 2 * 3 = 8 + 6 = 14 L’ordre de la priorité est: ( ) > puissance ^ > / et * > + et – Encas d’égalité de la priorité, l’évaluation s’effectue de gauche a droite. A*(B+A)*C = 2 * (4 + 2) * 3 = 2 * 6 * 3 = 12 * 3 = 36 A ^ C * B = 2 ^ 3 * 4 = 8 * 4 = 32 C+D+C+D = 3 + 5 + 3 + 5 = 8 + 3 + 5 = 11 + 5 + 3 + 5 = 16 + 3 + 5 = 19 + 5 = 24 Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables – booléens : La table de vérité des fonctions logiques : Non Et Ou ou. Ex Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables – booléens : Tout comme en arithmétique les opérateurs booléens ont des priorités, la priorité des opérateurs est: Rappels sur la logique booléenne : ( ) > non > et > ou. Ex > ou Valeurs possibles : Vrai ou Faux. Encas d’égalité de la priorité, Associativité des opérateurs et et ou : a et (b et c) = (a et b) et c l’évaluation s’effectue de gauche Commutativité des opérateurs et et ou : a et b = b et a a droite. a ou b = b ou a Distributivité des opérateurs et et ou : a ou (b et c) = (a ou b) et (a ou c) a et (b ou c) = (a et b) ou (a et c) Loi de Morgan : non (a ou b) = non a et non b non (a et b) = non a ou non b Cours 2 : bases d’algorithmique
2 -Composition : 2 -2 - Variables – booléens (exemple): Pour les variable logique A, B donner le résultat des opération suivantes (en sachant que A ← Vrai, B ← faux) : Non A = non(1) = 0. A et B = 1 et 0 = 0. A ou B = 1 ou 0 = 1. Non A et B = non 1 ou 0 = 0. Non(A et B) = non(1 et 0) = non(0) = 1. Non(A ou B) = non(1 ou 0) = non(1) = 0. (A et B) ou (A et non B) = (1 et 0) ou (1 et non(0)) = 0 ou (1 et 1) = 0 ou 1 = 1. Cours 2 : bases d’algorithmique
2 -Composition : 2 -3 - Lisibilité : Algorithme Démonstration variables: La lisibilité des algorithmes est un critère de qualité important, un algorithme correct mais indéchiffrable est aussi efficace qu’un algorithme faux, donc c’est un algorithme faux, vous devrez par conséquent soigner particulièrement vos algorithmes, ils doivent être faciles a lire, et rédigés de sorte qu’un lecteur soit non seulement capable de l’exécuter, mais aussi capable de le comprendre rapidement. A, B, C : numériques. t : chaine de caractères. Début A ← 1 B ← A+1 C ← A A ← A+1 t ← ‘exemple 1’ + ‘exemple 2’ Fin Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -1 - Les entrées/sorties : De nombreux algorithmes ont pour but de communiquer avec un utilisateur, cela se fait dans les deux sens, les sorties sont des envois de messages a l’utilisateur, les entrées sont des informations fournies par l’utilisateur. Demande de donn >>Donne moi les données que vous voulez traiter? ées Affichage des résultats Utilisate ur Entrée d >> Données saisies >> Voila le résultat: es donné es à trait e r computer Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -1 - Les entrées/sorties : Lecture : Il est possible de demander à un utilisateur du programme de saisir une valeur, la syntaxe de la saisie est la suivante : Lire(nomvariable) La saisie interrompt le programme jusqu’a ce que l’utilisateur ait saisi une valeur au clavier, une fois cela fait, la valeur saisie est placée dans la variable nomvariable, il est possible de saisir plusieurs variables a la suite : Cours 2 : bases d’algorithmique lire(A, B, C) place trois valeurs saisies par l’utilisateur dans les
3 -Les instructions : 3 -1 - Les entrées/sorties : Ecriture : Pour afficher un message a destination de l’utilisateur, on se sert de la commande: écrire(message) Cette instruction affiche le message a l’utilisateur, par exemple écrire(‘bonjour’) affiche bonjour sur l’écran, (les guillemets sont très importantes), il est aussi possible d'afficher le contenu d’une variable : écrire(A) affiche l’écran le contenu de la variable A. Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -1 - Les entrées/sorties : Ecriture : On peut mélanger les messages et les valeurs des variables, par exemple, les instructions: écrire(‘la valeur de A est : ’) écrire(A) ont le même effet que l’instruction écrire(‘la valeur de A est : ’, A) Lorsque l’on combine messages et variables dans les instructions d'affichage, on les sépare par des virgules. Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -1 - Les entrées/sorties (exemple) : Cet algorithme demande a l’utilisateur de saisir un entier, ensuite il affiche la valeur saisie puis la même valeur incrémentée de 1. Algorithme Affichage_incrément variables : >>Saisissez une valeur numérique >> 12 a: entier Début >> vous avez saisi la valeur : 12 écrire(‘Saisissez une valeur numérique’) >> a+1 = 13 lire(a) écrire(’Vous avez saisi la valeur: ’, a) écrire(‘ a+1 =’, a+1) Fin Cours 2 : bases d’algorithmique computer
3 -Les instructions : 3 -2 - Traitements conditionnels : On appelle traitement conditionnel un bloc d’instructions dont l’exécution est soumise à la vérification d’un test. Si la variable A, au moment du si. . . alors test, a une valeur nulle, alors La syntaxe d’un traitement conditionnel est la suivante : l’instruction écrire(‘La valeur de la variable A est nulle’) est Si condition alors exécutée, sinon, elle est Instructions ignorée. fin si Les instructions ne sont exécutées que si condition est vérifiée, par exemple: Si A = 0 alors écrire(‘la valeur de la variable A est nulle’) fin si Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels : Condition: Une condition est une comparaison, son résultat est de type booléen, et prend donc deux valeurs: vrai ou faux. L’évaluation de la condition s’effectue de la même manière que On peu ajouter une autre condition: l’évaluation d’une expression booléenne, exemple: Lire(moyenne, sanction_disciplinaire) Lire(moyenne) Si moyenne ≥ 10 et non Si moyenne ≥ 10 alors sanction_disciplinaire alors écrire(‘étudiant admis’) finsi Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels : Conditions Une condition peut être tout type de test, par exemple: La condition A= 2 est vérifiée si la valeur contenue A=2 dans A est 2. A= B est vérifiée si les valeurs A=B contenues dans A et dans B sont les mêmes. A = B et B ≠ 7 est vérifiée si B contient une valeur différente de 7. 2 >7 2> 7 est vérifiée si 2 est supérieur a 7, donc jamais, Not A et B cette condition est donc fausse et ne dépend pas des valeurs des variables. Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels : Si étendue Le traitement conditionnel peut être étendu de la sorte : si condition est vérifiée, les si condition alors instructions sont exécutées, dans le instructions cas contraire, donc si condition sinon n’est pas vérifiée, alors ce sont les autres instructions qui sont autres instructions exécutées. finsi Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels (exemple): Dans l’exemple ci-dessus, la condition a= b est évaluée, si a ce moment-la les variables a et b Algorithme Valeurs_Distinctes_variables contiennent la même valeur, alors la condition a= b sera vérifiée, dans ce cas, l’instruction écrire(‘Vous a, b: entiers. avez saisi deux fois la même valeur, a savoir’, a) Début sera exécutée. Si la condition a= b n’est pas écrire(‘Saisissez deux valeurs numériques’) vérifiée, donc si les variables a et b ne contiennent pas la même valeur au moment de l’évaluation de lire(a, b) la condition, c’est alors l’instruction écrire(‘Vous si a = b alors avez saisi deux valeurs différentes, ‘, a, ‘et ‘, b) qui écrire(‘Vous avez saisi deux fois la même valeur, a savoir’, a) sera exécutée. Sinon écrire(‘Vous avez saisi deux valeurs différentes’, a, ’et’, b) finsi Fin Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels : Imbrication Il est possible d’imbriquer les si a volonté : si a < 0 alors si b < 0 alors écrire(‘a et b sont négatifs’) sinon écrire(‘a est négatif, b est positif ‘) Si par exemple a et b sont tous deux positifs, alors aucun des deux tests ne sera vérifiées, et c’est donc le sinon du sinon qui sera exécuté, a savoir écrire(‘a et b sont positifs’). finsi sinon si b < 0 alors écrire('b est négatif, a est positif') sinon écrire('a et b sont positifs') finsi Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels (exemple) : Algorithme Signe_du_produit variables : a, b: entiers Début écrire(‘Saisissez deux valeurs numériques‘) lire(a, b) écrire(‘Le produit de‘, a, ‘par’, b, ‘est : ’) L’instruction écrire(‘positif ou nul’) sera exécutée si au moins une des deux conditions suivantes est vérifiée : a≤ 0 et b≤ 0 a≥ 0 et b≥ 0 si (a ≤ 0 et b ≤ 0) ou (a ≥ 0 et b ≥ 0) alors écrire(‘positif ou nul’) sinon écrire(‘négatif’) finsi fin Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels : Suivant cas Lorsque qu'on souhaite conditionner l’exécution de plusieurs ensembles d’instructions par la valeur que prend une variable, plutôt que de faire des imbrications de si a outrance, on préférera la forme suivante: suivant la valeur que prend la variable, le Suivant variable faire bloc d’instructions a exécuter est sélectionnée, par exemple, si la valeur de cas valeur 1 instructions 1 variable est valeur 1, alors le bloc cas valeur 2 instructions 1 est exécutée. Le bloc autres . . . cas est exécuté si la valeur de variable ne cas valeur n instructions n correspond a aucune des valeurs énumérées. autres cas instructions finsuivant Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -2 - Traitements conditionnels (exemple) : Ecrivons un algorithme demandant a l’utilisateur le jour de la semaine, affichons ensuite le jour correspondant au lendemain. Cours 2 : bases d’algorithmique
Algorithme Lendemain 3 -Les instructions : variables : Erreur: booléen jour, lendemain : chaine de caractères Début écrire(‘Saisissez un jour de la semaine’) lire( jour) 3 -2 - Traitements conditionnels (exemple) : erreur ← 0 suivant jour faire cas ‘dimanche’ lendemain ← lundi cas ‘lundi’ lendemain ← mardi cas ‘mardi’ lendemain ← mercredi cas ‘mercredi’ lendemain ← jeudi cas ‘jeudi’ lendemain ← vendredi cas ‘vendredi’ lendemain ← samedi cas ‘samedi’ lendemain ← dimanche Vous remarquez que si on avait voulu écrire le même algorithme avec des si, on utilise plusieurs imbrications. autres cas erreur ← 1 finsuivant si erreur alors écrire(‘Erreur de saisie’) sinon écrire(‘Le lendemain du’, jour, ’est’, lendemain) finsi Fin Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -3 - L’algorigramme : C’est une représentation graphique de l’algorithme, pour le construire, on utilise des symboles normalisés, ici on présente quelques symboles utilisés dans la Symbole Désignation et rôle construction d’un algorigramme : Symbole de traitement Symbole auxiliaire Symbole général Opération ou groupe d’opérations sur des données, instructions, pour laquelle il n’existe aucun symbole normalisé. Entrée-Sortie Mise à disposition d’une information à traiter ou enregistrement d’une information traitée. Test Exploitation de conditions variables impliquant un choix parmi plusieurs. Sens conventionnel des liaisons Le sens général des lignes de liaison doit être : De haut en bas. De gauche à droite. Début, fin, interruption Début, fin ou interruption d’un algorigramme. Commentaire Symbole utilisé pour donner des indications sur les opérations effectuées. Les différents symboles sont reliés entre eux par des lignes de liaisons. Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -3 - L’algorigramme (exemple): Début Algorithme comparaison Variables: A, B : entiers. DEBUT écrire(‘Saisissez A et B: ’) lire(A, B) Si A > B alors écrire(‘A est supérieur a B’) Sinon écrire(‘B est supérieur a A’) fin si FIN écrire(‘Saisissez A et B: ’) Lire(A, B) Si A > B alors oui écrire(‘A est supérieur a B’) no n écrire(‘B est supérieur a A’) Fin Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -4 - les boucles : Comment on peut calculer la suite suivante: 1+2+3+……. . +1000 ? ? ? !! Une boucle permet d’exécuter plusieurs fois de suite le même sous bloc d’instructions, chaque exécution du corps d’une boucle s’appelle une itération, on va voir deux types de boucles : Tant que Pour Chacune de ces boucles a ses avantages et ses inconvénients Cours 2 : bases d’algorithmique nous verrons dans les planches suivantes.
3 -Les instructions : 3 -4 - les boucles – tant que : La syntaxe dune boucle tant que est la suivante: L’avantage de cette boucle est qu’on est pas obliger de tant que condition connaitre le nombre d’itération a l’avance. instructions L’ inconvénient est le risque d’entrer dans une boucle infinie si on ne gère pas bien la condition. Fin tant que La condition est évaluée avant chaque itération, a chaque fois quelle est vérifiée, on exécute les instructions de la boucle, une fois que la condition n’est plus vérifiée, l’exécution se poursuit après le fin tant que. Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -4 - les boucles – tant que (exemple): Affichons par exemple tous les nombres de 1 à 5 dans l’ordre Cet algorithme initialise i a 1 et tant que la valeur de i ne croissant : dépasse pas 5, cette valeur est affichée puis incrémentée, les Algorithme de 1 a 5 instructions se trouvant dans le corps de la boucle sont donc exécutées 5 fois de suite. variables : La variable i s’appelle un compteur, on gère la boucle par i : entier incrémentations successives de i et on sort de la boucle une Début fois que i a atteint une certaine valeur, l’initialisation du i ← 1 compteur est très importante, si vous n’initialisez pas i tant que i ≤ 5 explicitement, alors cette variable contiendra n’importe quelle écrire (‘la valeur de i est de : ’, i ) valeur et votre algorithme ne se comportera pas du tout comme prévu. i ← i+1 fin tant que Cours 2 : bases d’algorithmique
3 -Les instructions : 3 -4 - les boucles – pour : La syntaxe d’une boucle pour est la suivante: pour variable de premierevaleur a dernierevaleur [par pas L’avantage de cette boucle est qu’on est pas obliger de de pas] gérer le compteur (condition d’ arrêt). L’ inconvénient est qu’on doit connaitre a l’avance le instructions nombre d’itérations a effectuer. Fin pour La boucle pour fait varier la valeur du compteur variable entre premièrevaleur et dernièrevaleur, le pas est optionnel et permet de préciser la variation du compteur entre chaque itération, le pas par défaut est 1 et correspond donc a une incrémentation. La boucle pour initialise le compteur variable a la premièrevaleur, et tant que la dernièrevaleur n’a pas Cours 2 : bases d’algorithmique été atteinte, les instructions sont exécutées et le compteur
3 -Les instructions : 3 -4 - les boucles – pour (exemple): On reprend l’exemple précédent : Algorithme pour 1 a 5 variables : i : entier Début pour i de 1 a 5 Ici on remarque l’initialisation et l’incrémentation du compteur i se fait automatiquement par la boucle. A chaque itération la boucle fait le test sur la valeur de i, si i ≤ 5 alors les instructions se trouvant dans le corps de la boucle sont donc exécutées. écrire(‘la valeur de i est de : ’, i ) fin pour Fin Cours 2 : bases d’algorithmique
4 -L’exécution d’un algorithme : 4 -1 - le tableau d’exécution : Pour une exécution facile et sans ambigüité d’un algorithme, on introduit la notion de tableau d’exécution, ce tableau contiendra les valeurs de toutes les variables utilisées dans l’algorithme ainsi que les messages échangés entre instruction Variable 1 ……. . Variable i Entrée Sortie l’utilisateur et l’algorithme à travers les instructions d’entrées Début ni ni ni / / sorties. Instruction 1 Instruction 2 ……. Instruction n Fin Cours 2 : bases d’algorithmique
4 -L’exécution d’un algorithme : 4 -1 - le tableau d’exécution (exemple): instruction i Entrée Sortie i ← 1 1 / / écrire(‘la valeur de i est de : ’, i) 1 / la valeur de i est de : 1 i ← 2 2 / / écrire(‘la valeur de i est de : ’, i) 2 / la valeur de i est de : 2 i ← 3 3 / / écrire(‘la valeur de i est de : ’, i) 3 / la valeur de i est de : 3 i ← 4 4 / / écrire(‘la valeur de i est de : ’, i) 4 / la valeur de i est de : 4 On exécute l’algorithme suivant pour la valeur de N = 4 ? Début ni / / Algorithme pour 1 a. N variables : i : entier Début pour i de 1 a N écrire(‘la valeur de i est de : ’, i) fin pour Fin i ← 5 5 / Cours 2 : bases d’algorithmique écrire(‘la valeur de i est 5 / / la valeur de i est
4 -L’exécution d’un algorithme : 4 -1 - le tableau d’exécution (exemple): On exécute l’algorithme suivant? instruction nb nbcarr e Entré e Sortie Algorithme carre Début ni ni / / Variables : nb ← 1 1 ni / / nbcarre ← nb * nb 1 1 / / Debut écrire(nb, ‘^2 = ‘, nbcarre) 1 1 / 1^2 = 1 nb ← nb + 1 2 1 / / Tant que nb ≤ 3 nbcarre ← nb * nb 2 4 / / nbcarre ← nb * nb écrire(nb, ‘^2 = ‘, nbcarre) 2 4 / 2^2 = 4 écrire(nb, ‘^2 = ‘, nbcarre) nb ← nb + 1 3 4 / / nb ← nb + 1 nbcarre ← nb * nb 3 9 / / écrire(nb, ‘^2 = ‘, 3 9 / 3^2 = 9 nb, nbcarre : entiers fin tant que Fin Cours 2 : bases d’algorithmique nbcarre)
Des questions? ? ? Cours 2 : bases d’algorithmique
- Slides: 46