Algorithmique et programmation langage C ASMAE OUHMIDA UNIVERSITÉ HASSAN II ECO
Algorithmique et programmation langage C ASMAE OUHMIDA UNIVERSITÉ HASSAN II ECOLE NORMALE SUPÉRIEURE D’ENSEIGNEMENT TECHNIQUE Département Mathématiques et Informatique PLAN Introduction Qu’est ce qu’un algorithme ? Notion d’algorithmes Etapes d’un algorithme Déclaration de données Opérations de base Introduction ►Pour pouvoir effectuer un traitement donné, la machine doit disposer du programme exécutable correspondant. Ce programme doit se trouver en mémoire et doit alors être codé en binaire (langage machine). ►Un langage de programmation permet au programmeur d'écrire son programme suivant une grammaire qui peut être, soit celle du langage machine même, soit une grammaire facilement interprétable par la machine ou pouvant être traduite en langage machine au moyen d'un outil logiciel dit compilateur du langage. Introduction Il existe, en fait, trois catégories de langages : Le langage binaire : un langage machine exprimé par des chiffres (0 ou 1). Il produit des programmes automatiquement consommables (compréhensibles) par la machine mais qui sont illisibles et non portables. Les langages de bas niveau (comme l'assembleur) : ils produisent des programmes facilement interprétables par la machine mais d'utilisation lourde pour les programmeurs. Les langages évolués : ils sont souples et produisent des programmes clairs et lisibles mais ils doivent encore être compilés (traduits en langage machine par un compilateur du langage) pour générer des programmes exécutables. Nous en citons: Fortran, Basic, Pascal, C, C++, Visual Basic, Visual C++, Java... QU'EST CE QU'UN ALGORITHME ? Algorithme : mot dérivé du nom du mathématicien al_Khwarizmi qui a vécu au 9ème siécle, était membre d’un académie des sciences à Bagdad . Un algorithme prend des données en entrée, exprime un traitement particulier et fournit des données en sortie. Programme : série d’instructions pouvant s’exécuter en séquence, ou en parallèle (parallélisme matériel) qui réalise (implémente) un algorithme QU'EST CE QU'UN ALGORITHME ? Le terme algorithme est employé en informatique pour décrire une méthode de résolution de problème programmable sur machine. Un algorithme est une suite finie et ordonnée d'opérations (actions) élémentaires finies (en temps et moyens). Elle est régie par un ensemble de règles ou d'instructions de contrôle (séquencement, sélection et itération) permettant d'aboutir à un résultat déterminé d'un problème donné. POURQUOI l’ALGO ? Pour obtenir de la «machine» qu’elle effectue un travail à notre place. Problème: expliquer à la «machine» comment elle doit s'y prendre. Besoins : - savoir expliciter son raisonnement. - savoir formaliser son raisonnement. - concevoir (et écrire) des algorithmes: séquence d’instructions qui décrit comment résoudre un problème particulier Exemple Pour planter et arroser un ensemble d'arbres, on peut procéder de la manière suivante: planter l'ensemble d'arbres et les arroser tous à la fin. Algorithme de plantation et d'arrosage de plusieurs arbres 1- Creuser un trou. 2- Placer un arbre dans le trou. 3- Reboucher le trou. 4- S'il existe encore des arbres exécuter les actions 1, 2, 3 et 4. Sinon exécuter les actions suivantes. 5- Arroser les arbres. Exemple L'algorithme correspondant indique un ensemble d'opérations (1, 2, 3 et 4) à répéter un certain nombre de fois (règle d'itération) et l'opération ou les opérations (5 ou 1, 2, 3 et 4) à exécuter selon qu'il reste ou non des arbres à planter (règle de sélection). Remarque Pour résoudre le problème précédent, on peut procéder autrement : planter et arroser arbre par arbre. On conclut alors qu'à un problème donné pourraient correspondre plusieurs algorithmes. LES PROBLÈMES FONDAMENTAUX EN ALGORITHMIQUE Complexité • En combien de temps un algorithme va -t-il atteindre le résultat escompté? • De quel espace a-t-il besoin? Calculabilité • Existe-t-il des tâches pour lesquelles il n'existe aucun algorithme ? • Etant donnée une tâche, peut-on dire s'il existe un algorithme qui la résolve ? Correction • Peut-on être sûr qu'un algorithme réponde au problème pour lequel il a été conçu ? EXEMPLE DE LANGAGE ALGORITHMIQUE ETAPES D’UN ALGORITHME Préparation du traitement • données nécessaires à la résolution du problème Traitement • résolution pas à pas, • après décomposition en sous-problèmes si nécessaire Edition des résultats • impression à l’écran, • dans un fichier, etc. LANGAGE ALGORITHMIQUE Il faut avoir une écriture rigoureuse Il faut avoir une écriture soignée : respecter l’indentation Il est nécessaire de commenter les algorithmes Il existe plusieurs solutions algorithmiques à un problème posé Il faut rechercher l’efficacité de ce que l’on écrit Algorithme Bonjour {il dit juste bonjour mais … en anglais ! Début afficher('Hello world !!!') ALaLigne Fin Algorithme NomAlgorithme { ceci est un commentaire} Début ... Actions Fin DÉCLARATION DES DONNÉES Variable <nom de donnée>: type Instruction permettant de réserver de l’espace mémoire pour stocker des données Dépendant du type des données : entiers, réels, caractères, etc.) Exemples : Variables val, unNombre : entiers nom, prénom : chaînes de caractères DÉCLARATION DES DONNÉES Constante <nom de donnée>: type valeur ou expression Instruction permettant de réserver de l’espace mémoire pour stocker une constante dont la valeur ne varie pas. Exemples : Constante MAX : entier 10 DEUXFOISMAX : entier MAX x 2 PHASE D’ANALYSE Consiste à extraire de l’énoncé du problème des éléments de modélisation Technique : Distinguer en soulignant de différentes couleurs quelles sont - Quel est le but du programme (traitement à réaliser) - Données en entrée du problème - Où vont se situer les résultats en sortie EXEMPLE D’ÉNONCÉ D’UN PROBLÈME Exemple On souhaite calculer et afficher , à partir d’un prix hors taxe saisi, la TVA ainsi que le prix TTC Le montant TTC dépend : - Du prix HT - Du taux de TVA de 20,6 EXEMPLE D’ÉNONCÉ D’UN PROBLÈME On souhaite calculer et afficher , à partir d’un prix hors taxe saisi, la TVA ainsi que le prix TTC Le montant TTC dépend de : - Du prix HT - Du taux de TVA de 20,6 « Traitement à réaliser » EXEMPLE D’ÉNONCÉ D’UN PROBLÈME On souhaite calculer et afficher , à partir d’un prix hors taxe saisi, la TVA ainsi que le prix TTC Le montant TTC dépend de : - Du prix HT - Du taux de TVA de 20,6 « Données en entrée » Exemple d’énoncé d’un problème On souhaite calculer et afficher , à partir d’un prix hors taxe saisi, la TVA ainsi que le prix TTC Le montant TTC dépend de : - Du prix HT - Du taux de TVA de 20,6 « Données en sortie » ALGORITHME TVA Algorithme CalculTVA {Saisit un prix HT et affiche le prix TTC correspondant} Constantes (TVA : réel) 20.6 (Titre : chaîne) "Résultat" Variables prixHT : réel Variable prixTTC, montantTVA : réels {déclarations} Début {préparation du traitement} afficher("Donnez-moi le prix hors taxe :") saisir(prixHT) prixTTC prixHT* (1+TVA/100) {calcul du prix TTC} montantTVA prixTTC- prixHT afficher(Titre) {présentation du résultat} afficher(prixHT, «euros H.T. + TVA ",TVA, « devient » ,prixTTC, «eurosT.T.C.") Fin Opérations de base L’affectation La lecture L’écriture Instructions de contrôle L’affectation L'affectation, notée par le symbole , est l'opération qui évalue une expression (constante ou une expression arithmétique ou logique) et attribue la valeur obtenue à une variable. Variable expression L’affectation Exemple d’affectation a 10 a reçoit la constante 10 a (a*b)+c a reçoit le résultat de (a*b)+c d 'm' d reçoit la lettre m La lecture Cette opération permet d'attribuer à une variable une valeur introduite au moyen d'un organe d'entrée (généralement le clavier). Lire variable La lecture Exemple de lecture Lire a On demande à l'utilisateur d'introduire une valeur pour a Lire (a,b,c) On demande à l'utilisateur d'introduire 3 valeurs pour a, b et c respectivement Remarque L'organe d'entrée est assimilé à un ruban composé d'une suite de cases chacune peut contenir un caractère ou un chiffre. C'est la valeur qui se trouve à la tête du ruban qui sera attribuée à la variable à lire. Une fois, la lecture est terminée, elle est supprimée du ruban. L’écriture Elle communique une valeur donnée ou un résultat d'une expression à l'organe de sortie Exemple d’écriture : Ecrire 'bonjour' Affiche le message bonjour (constante) Ecrire 12 Affiche la valeur 12 Ecrire a,b,c Affiche les valeurs de a, b et c Ecrire a+b Affiche la valeur de a+b Ecrire expression Instructions de contrôle Instructions sélectives a) Instruction Si Si condition alors instruction(s) 1 Sinon instruction(s) 2 FinSi Instructions de contrôle Elle indique le traitement à faire selon qu’une condition (expression logique) donnée est satisfaite ou non. Il est possible d’omettre début et fin si le bloc d’instructions à exécuter est constitué d’une seule instruction. Instructions sélectives Remarques 1- Une instruction de contrôle peut se réduire à : Si condition alors instruction(s) FinSi Instructions sélectives 2- On peut avoir plusieurs si imbriqués comme: Si condition1 alors Si condition2 alors Si condition3 alors <instruction(s) 1> Sinon <instruction(s) 2> FinSi Sinon <instruction(s) 3> FinSi Sinon <instruction(s) 4> FinSi Instructions sélectives Exemple Calculer la taxe sur le chiffre d'affaire (CA) sachant qu'elle est de : 10% si le CA<5000DH 20% si le CA >=5000DH lire CA Si CA<5000 alors TaxeCA*10% Sinon TaxeCA*20% FinSi Ecrire Taxe Instructions sélectives Exercice Vérifier si un agent a droit de bénéficier uploads/Industriel/ algorithmique-et-programmation-langage-c.pdf
Documents similaires










-
53
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 08, 2022
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 1.4041MB