Beruflich Dokumente
Kultur Dokumente
PROGRAMME
Chap. 1 : Introduction aux algorithmes et au langage C Chap. 2 : Notions de Base Chap. 3 : Structures conditionnelles et de choix Chap. 4 : Structures itratives Chap. 5 : Procdures et fonctions Chap. 6 : Les tableaux
Salami OBE
salamiobe@gmail.com
L objectif de la programmation est de trouver une solution informatique un problme pos. Les problmes sont en gnral de diffrentes complexits. D une manire gnrale un programme doit prsenter une interface graphique ou tre excut en mode texte.
Problme
Solution algorithmique
Codage Langage C
Compilation
Excution du programme
I.
DEFINITIONS
L'algorithme est le rsultat d'une dmarche logique de rsolution d'un problme pour la mise en uvre pratique sur ordinateur et afin d'obtenir des rsultats concrets il faut passer par l'intermdiaire d'un langage de programmation. Un algorithme dcrit une succession d'oprations qui, si elles sont fidlement excutes, produiront le rsultat dsir. Un algorithme est une suite d'actions que devra effectuer un automate pour arriver en un temps fini, un rsultat dtermin partir d'une situation donne. La suite d'oprations sera compose d'actions lmentaires appeles instructions.
Un programme est une traduction de l algorithme dans un langage de programmation comprhensible par la machine
Salami OBE
salamiobe@gmail.com
II.
INTERT DE L ALGORYTHME
Informatiser une application, facturation de la consommation d'eau, par exemple, c'est faire raliser par ordinateur, une tche qui tait ralise par l'Homme. Pour faire excuter une tche par ordinateur, il faut tout d'abord, dtailler suffisamment les tapes de rsolution du problme, pour qu'elle soit excutable par l'homme. Ensuite, transfrer la rsolution en une suite d'tapes si lmentaire et simple excuter, pouvant tre code en un programme dans un langage comprhensible par ordinateur. Toute suite d'tapes si lmentaire et simple excuter s'appelle un ALGORITHME. Un programme c'est un algorithme cod dans un langage comprhensible par ordinateur l'aide d'un compilateur (traducteur).
III.
Du fait que la rsolution du problme est informatique, il faudra traduire la solution de manire comprhensible par l ordinateur. Le langage de programmation devra donc respecter certaines rgles d criture dictes par le traducteur qui va interprter le langage en code comprhensible par l ordinateur. L algorithme qui est la premire tape dans la rsolution ne ncessite pas de compilation, ce qui entraine une grande souplesse dans la syntaxe.
Les donnes ncessaires (les donnes en entre) Les donnes rsultantes (les donnes en sortie) La dmarche suivre pour arriver au rsultat en partant d'un ensemble de donnes (le traitement).
Salami OBE
salamiobe@gmail.com
Dans le cas de la solution algorithmique on considre que le calcul devra se faire par l ordinateur. Il faudra donc lui fournir des donnes (gnralement via clavier et souris). Apres calcul, le rsultat est affich l cran qui une interaction entre l utilisateur et la machine. Donc les donnes qui seront fournies dans notre cas seront la longueur et la largeur. La donne produite comme rsultat est le primtre.
3. Exemple de l algorithme
Ecrire ("Donnez la longueur ") Lire (longueur) Ecrire ("Donnez la largeur ") Lire (longueur) Perimetre (longueur + largeur) * 2
Salami OBE
salamiobe@gmail.com
I.
DEFINITIONS
Un algorithme est une suite d instruction simple dont l excution conduit un rsultat Un programme est une traduction de l algorithme dans un langage comprhensible par la machine
II.
MAITRISE DE L ALGORITHME
La matrise de l algorithmique requiert deux qualits, trs complmentaires d ailleurs : v Il faut avoir une certaine intuition, car aucune recette ne permet de savoir a priori quelles instructions permettront d obtenir le rsultat voulu. C est l, si l on y tient, qu intervient la forme d intelligence requise pour l algorithmique. Alors, c est certain, il y a des gens qui possdent au dpart davantage cette intuition que les autres. Cependant, et j insiste sur ce point, les rflexes, cela s acquiert. Et ce qu on appelle l intuition n est finalement que de l exprience tellement rpte que le raisonnement, au dpart laborieux, finit par devenir spontan . v Il faut tre mthodique et rigoureux. En effet, chaque fois qu on crit une srie d instructions qu on croit justes, il faut systmatiquement se mettre mentalement la place de la machine qui va les excuter, arm d'un papier et d'un crayon, afin de vrifier si le rsultat obtenu est bien celui que l on voulait. Cette opration ne requiert pas la moindre once d intelligence. Mais elle reste nanmoins indispensable, si l on ne veut pas crire l aveuglette. Et petit petit, force de pratique, vous verrez que vous pourrez faire de plus en plus souvent l conomie de cette dernire tape : l exprience fera que vous verrez le rsultat produit par vos instructions, au fur et mesure que vous les crirez. Naturellement, cet apprentissage est long, et demande des heures de travail patient. Aussi, dans un premier temps, vitez de sauter les tapes : la vrification mthodique, pas pas, de chacun de vos algorithmes reprsente plus de la moiti du travail accomplir... et le gage de vos progrs.
Salami OBE
salamiobe@gmail.com
ALGORITHME nom_de_l'algorithme CONST {Dfinition des constantes} VAR DEBUT Action 1 Action 2 Action N FIN {Dfinition de variables}
1) En-tte
Il permet d identifier l algorithme Exemple : Algorithme Calcul_Perimetre
2) Dclarations
C est une liste exhaustive d objets de grandeur utiliss et manipuls dans le corps de l algorithme. Cette liste est place au dbut de l algorithme.
3) Le corps de l algorithme
Dans cette partie sont places les tches d instructions et oprations excuter.
IV.
1. Les constantes
Elles reprsentent des chiffres des nombres, des caractres, des chaines de caractres dont la valeur ne peut pas tre modifie au cours de l excution de l algorithme. Le mot cl pour dclarer une constante est Const. La dclaration d une constante se fait de la manire suivante : Const identificateur_de_la_constate expression : Type
Salami OBE
salamiobe@gmail.com
2. Les Variables
Elles reprsentent des chiffres, des nombres, des caractres, des chaines de caractres dont la valeur peut tre modifie au cours de l excution de l algorithme. Le mot cl pour dclarer une variable est Var. La dclaration d une constante se fait de la manire suivante : Var identificateur_de_la_variable Exemple : Var n , i r b,c Chaine expression : Type
2 : : :
NB : Constantes et Variables sont dfinies dans la partie dclarative par deux caractristiques essentielles savoir : L Identificateur qui est le nom de la variable ou de la constante. Il est constitu de lettres et de chiffres Le Type c est la nature de la variable ou de la constante
V.
Pour pouvoir accder et manipuler des donnes le programme (quel que soit le Langage dans lequel il est crit) fait usage d un grand nombre de variables de diffrentes types. Pour distinguer les un des autres des divers contenus possibles, on utilise diffrents types de variables. Nous considrons 5 types de base
1. Les entiers
Notation : 45, 36, -800 , O , - - - Mot cl : entier
2. Rels
Notation : 7.65 , 3.75 , -700, -20.35 , - - - Mot cl : rel
Salami OBE
salamiobe@gmail.com
4. Chaines de caractres
Notation : bonjour , bonjour tout le monde , - - - Mot cl : chane
5. Boolen
Dans le type boolen on a deux valeurs : Vrai ou Faux Mot cl : boolen
VI.
LES OPERATEURS
Les oprateurs sont le fondement mme du traitement des oprations mathmatiques et comparatif de n importe quel langage, l algorithme ne fait pas exception. Il est noter qu il n existe pas de vritable standard sur la forme d criture des oprateurs algorithmiques, mais seulement une tendance trs prononc pour les symboles mentionns.
Oprateurs arithmtiques
Oprateur + * / mod Description addition soustraction multiplication division Modulo (donne le reste de la division entire) Effectue une affectation une variable
Salami OBE
salamiobe@gmail.com
Oprateurs Logiques
Oprateur ET OU OU X NON Description Comparaison d une galit Comparaison de plus petit que Comparaison de plus grand que Comparaison de plus petit ou gal que
Exemple: al , go al + go = algo
Fonction de comparaison sur les chaines > Suprieur < Infrieur = Egal
4. Ce qu il faut retenir
Retenez le nom des diffrents types et de leurs oprateurs en retenant bien quel oprateur fait quoi avec quoi. Vous devriez pouvoir reconstruire de tte le tableau rcapitulatif (encore une fois, vous ne devriez pas avoir l'apprendre, vous devriez pouvoir le dduire des types).
Salami OBE
salamiobe@gmail.com
La valeur peut tre remplace par une expression qui est une suite d oprations sur des constantes ou des variables dclares.
VII.
Pour faciliter des changes ou le dialogue entre l utilisateur et l excution d un programme, nous faisons appel des instructions. Dans un sens, ces instructions permettent l utilisateur de rentrer des valeurs au clavier pour qu elles soient utilises par le programme. Cette opration est la lecture. Dans l autre sens, d autres instructions permettent au programme de communiquer des valeurs l utilisateur en les affichant l cran. Cette opration est l criture.
1. La commande Ecrire
La commande Ecrire permet d afficher du texte. Elle permet aussi des chaines de caractres, des variables et des constantes . Le texte afficher doit tre en guillemets (" texte "). Les diffrents noms de variables doivent tre spars par des virgules. Notation : Ecrire (" le texte afficher ", variable1)
2. La commande Lire
La commande Lire permet l utilisateur de rentrer une valeur qui sera utilis par le programme Notation : lire (variable1)
APPLICATION
10
Salami OBE
salamiobe@gmail.com
I.
Introduction
Les algorithmes vus prcdemment taient trs simples. En effet, pour l'instant, nous sommes seulement en mesure de dcrire une suite d'oprations, chacune devant tre excute une et une seule fois. Autrement dit on ne peut pas conditionner l'excution de certaines instructions. Pour cela on utilisera des structures conditionnelles et de choix. Nous allons donc nous baser sur ce qu on appelle prdicat ou condition Exemple Si la pice est allume, alors j'entre dans la pice. Sinon je passe mon chemin. Selon ce qu'il va se passer, soit je prends le mtro, soit je prends le bus. En Bleu nous avons la structure conditionnelle. En Orange c'est la condition. En Vert nous avons l'action effectue si la condition est respecte ou non.
Une structure conditionnelle permet en algorithmique de poser des conditions pour effectuer une ou plusieurs actions. On entend par structure conditionnelle, la possibilit d'orienter un algorithme en fonction de choix particuliers. Les structures conditionnelles nous ouvrent de nouveaux horizons pour l'laboration d'algorithmes. Cela reprsente une notion trs importante qu'il faut pouvoir assimiler si l'on cherche aller plus loin. Il en existe deux :
II.
Un prdicat ou condition est un nonc ou proposition qui peut tre vrai ou faux selon ce qu on est entrain de parler. Exemple
v (15 < 97) est une condition vraie v (5 < 45) est une condition faux
11
Salami OBE
salamiobe@gmail.com
III.
Une condition est une expression de type logique. Ils lui correspondent deux valeurs possibles VRAI et FAUX qu on note par V ou F.
2. Tableaux d valuations
A Vrai Faux NON A Faux Vrai
IV.
Elle permet d'exprimer une condition simple (binaire). L'valuation de la condition va dterminer la suite du droulement de l'algorithme.
12
Salami OBE
salamiobe@gmail.com
1. Syntaxe
Une seule des deux actions peut tre excute (action_1 ou action_2), l'algorithme continue ensuite son droulement normal. Si la condition value est vraie, c'est l'action 1 qui est effectue, sinon (si l'valuation est fausse), l'action 2 est excute. On indique en gnral la fin de l'instruction conditionnelle pour bien dlimiter son champ d'action. Les conditions peuvent prendre des formes plus ou moins complexes : SI (total = 0) ... SI ((mois > 2) ET (mois < 5)) ... SI (((reponse = "OUI") ET (total > 5)) OU (total > 10)) ... Si elle n'est pas ncessaire, la partie SINON peut tre omise. On peut parfaitement enchaner plusieurs instructions conditionnelles, d'ou l'intrt de bien en dlimiter la fin et d'indenter correctement l'algorithme.
13
Salami OBE
salamiobe@gmail.com
V.
Cette structure permet en fonction de plusieurs conditions de types boolens d effectuer des actions diffrentes suivant les valeurs que peut prendre une mme variable.
Syntaxe :
Suivant variable faire Valeur 1 : action_1 Valeur 2 : action_2 ... Valeur n : action_n SINON : Action n+1 Finsuivant
Les conditions sont values dans l'ordre, les unes aprs les autres, et ds qu'une de celle-ci est vrifie l'action associe est excute. Aprs quoi on passe au FIN SELON pour continuer avec la suite de l'algorithme. On peut utiliser une instruction SINON (facultative), dont l'action sera excute si aucune des conditions values n'a t remplie.
14
Salami OBE
salamiobe@gmail.com
Algorithme Code_de_la_route Var feu : chane Dbut Ecrire (Donnez la couleur du feu) Lire (feu) Suivant feu faire Vert : Ecrire (vous pouvez passer) Rouge : Ecrire (vous devez vous arrter) Orange : Ecrire (vous devez ralentir) Sinon : Ecrire (cette couleur ne correspond aucun feu de signalisation) FinSelon
15
Salami OBE
salamiobe@gmail.com