Algorithmique iv
-
Upload
rachid-lajouad -
Category
Education
-
view
142 -
download
7
Transcript of Algorithmique iv
![Page 1: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/1.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Algorithmique Algorithmique et programmation procéduraleet programmation procéduraleChap III :Procedures, Fonctions.Chap III :Procedures, Fonctions.
Lajouad Rachid
![Page 2: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/2.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
PréliminairePréliminaire
La méthodologie de base de l'informatique est :
• 1 Abstraire
• 2 Décomposer
• 3 Combiner
![Page 3: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/3.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Programme/Sous-programmeProgramme/Sous-programme
• Donc écrire un programme qui résout un problème revient toujours a écrire des sous-programmes qui résolvent des sous parties du problème initial.
• Le programme dans un contexte donne peut être un sous-programme dans un autre contexte
• Donc tout programme est aussi un sous-programme
• C'est le principe de la programmation structurée
![Page 4: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/4.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Programme/Sous-programmeProgramme/Sous-programme
Le paradigme de la programmation structure propose deux types de sous-programmes:
• Les fonctions
• Les procédures
![Page 5: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/5.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Il existe trois types d'association (que l'on nomme passage de paramètre) entre le paramètre formel et le paramètre effectif du (sous-)programme appelant :
• Le passage de paramètre en entrée
• Le passage de paramètre en sortie
• Le passage de paramètre en entrée/sortie
![Page 6: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/6.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les fonctionsLes fonctions
fonction NomFonction (parametre(s)) :type de la valeur retournee
Déclaration variable(s) locale(s)
début
instructions de la fonction avec au moins une fois l'instruction retourner
fin
![Page 7: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/7.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
ExempleExemple
fonction min2 (a,b : Entier) : Entierdebutsi a > b alors
retourner bsinon
retourner afinsi
finfonction min3 (a,b,c : Entier) : Entierdebutretourner min2(a,min2(b,c))
fin
![Page 8: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/8.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
ProcéduresProcédures
• Des sous-programmes qui modifient l'état d'un programme
• Admettent des paramètres formels avec des passages de paramètre :– en entrée, préfixes par Entrée (ou E)– en sortie, préfixes par Sortie (ou S)– en entrée/sortie, préfixes par Entrée/Sortie
(ou E/S)
![Page 9: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/9.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
ProcédureProcédure
• Déclaration :
procédure NomProcedure ( E param(s)Entree; S param(s)Sortie; E/S param(s)Entree/Sortie)
Declaration variable(s) locale(s)
debut
instructions de la procedure
Fin
![Page 10: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/10.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
ExempleExemple
procédure calculerMinMax3 (E a,b,c : Entier; S m,M : Entier)
debutm ← minimum3(a,b,c)
M ← maximum3(a,b,c)
Fin
![Page 11: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/11.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les fonctions en langage CLes fonctions en langage C
• Syntaxe :
Type NomFonction(params …)
{
instructions;
return …;
}
![Page 12: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/12.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les fonctionsLes fonctions
• Type : void.
• return avec les fonctions (void).
• Passage des arguments par valeurs.
• Passage des arguments par référence.
• Les prototypes de fonctions.
• Variables static
![Page 13: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/13.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
ExempleExemple
float sphere (int ray) {
float resultat;
resultat = ray * ray *ray;
resultat = 4 * PI *resultat;
resultat = resultat /3;
return resultat;
}
![Page 14: Algorithmique iv](https://reader036.fdocument.pub/reader036/viewer/2022082607/55b39b37bb61eb813d8b46d4/html5/thumbnails/14.jpg)
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Exercice d’applicationExercice d’application
• Ecrire un algorithme puis un programme en C permettant de réaliser tous les calculs géométrique sur les cercle et les disques, Le programme doit présenter les fonctions suivantes :– Une procédure menu.– Une fonction circonference.– Une fonction surface.– Une fonction revolution (calcul du volume
après une rotation par rapport à un axe).