Algorithmique, générale, cours
Avant de pouvoir utiliser une variable:
- La créer
- Lui associer une étiquette
L'étiquette d'une variable correspond en gros au nom qu'on lui associe.
Préciser le type d'information qu'on souhaite lui associer.
[...] Variables val, Double: Réel Début Val ← 231 Double ← Val * 2 Ecrire Val Ecrire Double Fin < number > Untitled-2.JPG Exo2 Ecrire un programme qui demande un nombre à l'utilisateur, puis qui calcule et affiche le carré de ce nombre. < number > Untitled-2.JPG Exo3 Ecrire un programme qui lit le prix HT d'un article, le nombre d'articles et le taux de TVA, et qui fournit le prix total TTC correspondant. Faire en sorte que des libellés apparaissent clairement. [...]
[...] Origine étymologique: Vient du nom du mathématicien Al Khuwarizmi latinisé en « algoritmi » Définitions: Académie Française: Méthode de calcul qui indique la démarche à suivre pour résoudre une série de problèmes équivalents en appliquant dans un ordre précis une suite finie de règles. Wikipedia: Un algorithme est un moyen pour un humain de présenter la résolution par calcul d'un problème à une autre personne physique (un autre humain) ou virtuelle (un calculateur) < number > Untitled-2.JPG Pour faire simple: Un algorithme est une suite d'instructions, d'actions permettant de résoudre un problème donné Aller quelque part: le chemin Réaliser un plat de cuisine: la recette Faire un calcul mathématique: la méthode La granularité des instructions correspond au contexte d'utilisation de l'algorithme Le chemin: l'interlocuteur La recette : Le cuisiner Le calcul: La puissance de l'ordinateur Heureusement, les ordinateurs sont à peu près aussi idiots les uns que les autres: même types d'instructions élémentaires compréhensibles < number > Untitled-2.JPG Qualités d'un bon concepteur d'algorithmes L'intuition: Pas de méthode universelle absolue pour résoudre un problème La rigueur et la logique La méthodologie, la capacité de se mettre à la place de la machine et d'être aussi idiot qu'elle L'expérience Renforce les deux premiers points Plus on écrit d'algorithmes plus on est performant à le faire < number > Untitled-2.JPG Algorithmique Vs programmation Un langage de programmation n'est que l'outil de réalisation de l'algorithme L'algorithme permet de concevoir la solution alors que la programmation permet de la mettre en œuvre L'algorithme est généralement à un niveau d'abstraction plus haut que la programmation Il est, cependant, nécessaire de prendre en compte la puissance et l'expressivité du langage de programmation avant de concevoir l'algorithme < number > Untitled-2.JPG Les variables < number > Untitled-2.JPG L'intérêt des variables Parfois, il est nécessaire de stocker de l'information au cours du calcul effectué par un algorithme Pour additionner deux valeurs, j'ai besoin de stocker ces deux valeurs Pour additionner trois valeurs, j'ai besoin de stocker en plus le résultat intermédiaire Une variable est donc une case où on peut stocker de l'information repérée par une étiquette permettant d'écrire dedans et de lire depuis. [...]
[...] Si vous avez un micro-ondes, mettez le dedans 20s, sinon utilisez une casserole et mettez-le dans de l'eau bouillante pendant 5min L'algorithme précédent prend en compte les deux situations où le cuisinier possède ou non un micro-ondes Les ordinateurs sont aussi capable d'évaluer une situation et de réaliser les calculs adéquats < number > Untitled-2.JPG Structure d'un Test Deux structures: Si expression booléenne Alors Instructions Finsi Si booléen Alors Instructions 1 Sinon Instructions 2 Finsi L'expression conditionnelle peut être une variable de type booléen ou une condition < number > Untitled-2.JPG La condition Une condition est le résultat d'une comparaison Généralement, Une valeur Un opérateur de comparaison Une autre valeur On retrouve les opérateurs: = = < number > Untitled-2.JPG Sémantique Dans le premier cas, Si l'expression booléenne est vraie, alors la séquence comprise dans « instructions » sera exécutée puis les autres instructions qui suivent seront exécutées Sinon, le programme saute la séquence instructions, et exécute directement les instructions qui suivent le bloc de test < number > Untitled-2.JPG Sémantique Dans le deuxième cas, Si l'expression booléenne est vraie, alors le programme: exécute la séquence d'instructions « instructions1 », Saute la séquence d'instructions « instuctions2 », Puis exécute les instructions suivantes Sinon, alors le programme: saute la séquence d'instructions « instructions1 » Exécute la séquence d'instructions « instructions2 » Puis continue en exécutant les instructions suivantes < number > Untitled-2.JPG L'œuf à la coque Prendre un œuf frais, Beldi de préférence Si vous avez un micro-ondes Alors Mettre l'œuf Le sortir après 20s Sinon Prendre une casserole Remplir la casserole d'eau Mettre l'œuf Le sortir après 5min FinSi Mettre l'œuf dans un coquetier Le déguster < number > Untitled-2.JPG Un petit exo Ecrire un algorithme qui demande un nombre à l'utilisateur, et l'informe ensuite si ce nombre est positif ou négatif (on laisse de côté le cas où le nombre vaut zéro). < number > Untitled-2.JPG Les conditions composées Parfois, il n'est pas possible d'énoncer une condition en utilisant une forme simple (de type Dans ces cas (e.g. [...]
[...] Le nombre maximal de caractères pouvant être stockés dans une seule variable string dépend du langage utilisé. < number > Untitled-2.JPG Types alphanumériques En Pseudo-code, la valeur est déclarée entre guillemets "chaîne de caractères" "bonjour" "Mesdames, messieurs, bonjour " "1234" Déclaration Variable caractères < number > Untitled-2.JPG Type booléen Permet de stocker les valeurs logiques Vrai/Faux (True/False) Peut être remplacé par les valeurs numériques 0 et mais l'utilisation des booléens: Rend l'algorithme plus lisible Est plus économique en terme d'utilisation de la mémoire, un bit suffit pour le stocker (un octet pour un entier) < number > Untitled-2.JPG Les instructions d'affectation < number > Untitled-2.JPG L'affectation Une variable n'est exploitable que si elle est instanciée. [...]
[...] Variable ecole2: caractères ecole2 ecole1 ecole2 "ecole1" Mais l'instruction suivante n'est pas consistante: ecole2 1 < number > Untitled-2.JPG Exemples L'instruction d'affectation n'altère que la variable se situant à gauche Variable e1, e2: entier e1 5 e2 e1 * 2 e1 e1+10 e2e1+e2 < number > Untitled-2.JPG Ordre des instructions L'ordre des instructions est déterminant: Elles s'exécutent séquentiellement dans l'ordre où elles apparaissent Variable e1: entier e110 e15 Vs e1 5 e110 Les deux algorithmes sont pour illustration, si vous écrivez quelque chose de semblable, posez-vous des questions < number > Untitled-2.JPG Pause exercices < number > Untitled-2.JPG Exo1 Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ? Variables Entier Début A ← 1 B ← A + 3 A ← 3 Fin < number > Untitled-2.JPG Exo2 Quelles seront les valeurs des variables B et C après exécution des instructions suivantes ? [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture