SlideShare une entreprise Scribd logo
1  sur  14
Algorithmique 
et programmation procédurale 
Chap III :Procedures, Fonctions. 
Lajouad Rachid 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Préliminaire 
La méthodologie de base de l'informatique 
est : 
• 1 Abstraire 
• 2 Décomposer 
• 3 Combiner 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Programme/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 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Programme/Sous-programme 
Le paradigme de la programmation structure 
propose deux types de sous-programmes: 
• Les fonctions 
• Les procédures 
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 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les 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 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Exemple 
fonction min2 (a,b : Entier) : Entier 
debut 
si a > b alors 
retourner b 
sinon 
retourner a 
finsi 
fin 
fonction min3 (a,b,c : Entier) : Entier 
debut 
retourner min2(a,min2(b,c)) 
fin 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Procé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) 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Procé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 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Exemple 
procédure calculerMinMax3 (E 
a,b,c : Entier; S m,M : Entier) 
debut 
m ← minimum3(a,b,c) 
M ← maximum3(a,b,c) 
Fin 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les fonctions en langage C 
• Syntaxe : 
Type NomFonction(params …) 
{ 
instructions; 
return …; 
} 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Les 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 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Exemple 
float sphere (int ray) { 
float resultat; 
resultat = ray * ray *ray; 
resultat = 4 * PI *resultat; 
resultat = resultat /3; 
return resultat; 
} 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
Exercice 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). 
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale

Contenu connexe

Tendances

Cours de programmation en c
Cours de programmation en cCours de programmation en c
Cours de programmation en cbenouini rachid
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
Tp1 compte rendu en langage c
Tp1 compte rendu en langage cTp1 compte rendu en langage c
Tp1 compte rendu en langage cEbrima NJIE
 
Exercices en langage c
Exercices en langage cExercices en langage c
Exercices en langage cDaoua Lotfi
 
Langage C
Langage  CLangage  C
Langage Cjwilili
 
algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycéeKayl Mido
 
exercices en C
exercices en Cexercices en C
exercices en Ccoursuniv
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap IIInes Ouaz
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Corrigés exercices langage C
Corrigés exercices langage CCorrigés exercices langage C
Corrigés exercices langage Ccoursuniv
 
C1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieC1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieLoic Yon
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap IInes Ouaz
 
Algorithme & structures de données Chap III
Algorithme & structures de données Chap IIIAlgorithme & structures de données Chap III
Algorithme & structures de données Chap IIIInes Ouaz
 

Tendances (20)

Chapitre2 prog dsplf3
Chapitre2 prog dsplf3Chapitre2 prog dsplf3
Chapitre2 prog dsplf3
 
Cours de programmation en c
Cours de programmation en cCours de programmation en c
Cours de programmation en c
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Tp1 compte rendu en langage c
Tp1 compte rendu en langage cTp1 compte rendu en langage c
Tp1 compte rendu en langage c
 
Exercices en langage c
Exercices en langage cExercices en langage c
Exercices en langage c
 
Langage C
Langage  CLangage  C
Langage C
 
algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycée
 
Cours de c
Cours de cCours de c
Cours de c
 
exercices en C
exercices en Cexercices en C
exercices en C
 
Le langage C
Le langage CLe langage C
Le langage C
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap II
 
Cours langage-c
Cours langage-cCours langage-c
Cours langage-c
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
Corrigés exercices langage C
Corrigés exercices langage CCorrigés exercices langage C
Corrigés exercices langage C
 
Exercices : Algorithmes et Langage C
Exercices : Algorithmes et Langage CExercices : Algorithmes et Langage C
Exercices : Algorithmes et Langage C
 
Correction
CorrectionCorrection
Correction
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
C1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieC1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partie
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap I
 
Algorithme & structures de données Chap III
Algorithme & structures de données Chap IIIAlgorithme & structures de données Chap III
Algorithme & structures de données Chap III
 

En vedette

Info1 cours 3-codage-mi-sys num
Info1  cours 3-codage-mi-sys numInfo1  cours 3-codage-mi-sys num
Info1 cours 3-codage-mi-sys numlinuxscout
 
Codage cours 2-software-mi-
Codage  cours 2-software-mi-Codage  cours 2-software-mi-
Codage cours 2-software-mi-linuxscout
 
Info1 cours 1-software-st&sm1-mi-
Info1  cours 1-software-st&sm1-mi-Info1  cours 1-software-st&sm1-mi-
Info1 cours 1-software-st&sm1-mi-linuxscout
 
Algorithmique_et_programmation_part3_V2
Algorithmique_et_programmation_part3_V2Algorithmique_et_programmation_part3_V2
Algorithmique_et_programmation_part3_V2Emeric Tapachès
 
Rendez votre code Python plus beau !
Rendez votre code Python plus beau !Rendez votre code Python plus beau !
Rendez votre code Python plus beau !Ronan Amicel
 
SGBDR - ACCESS
SGBDR - ACCESSSGBDR - ACCESS
SGBDR - ACCESSMusatge
 
Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Emeric Tapachès
 
Python et les bases de données non sql
Python et les bases de données non sqlPython et les bases de données non sql
Python et les bases de données non sqlbchesneau
 
Base NoSql et Python
Base NoSql et PythonBase NoSql et Python
Base NoSql et Pythonyboussard
 
Bonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHPBonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHPPascal MARTIN
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)salah fenni
 
La guerre d'algérie en images
La guerre d'algérie en imagesLa guerre d'algérie en images
La guerre d'algérie en imagesDande1941
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonMohammed TAMALI
 
Développement de la personnalité : La désintégration positive
Développement de la personnalité : La désintégration positiveDéveloppement de la personnalité : La désintégration positive
Développement de la personnalité : La désintégration positivePhilippe Piquer
 
Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Pascal Roques
 
Wordpress : Attaque, Audit et Protection | Hackfest 2015
Wordpress : Attaque, Audit et Protection | Hackfest 2015Wordpress : Attaque, Audit et Protection | Hackfest 2015
Wordpress : Attaque, Audit et Protection | Hackfest 2015Harvey Francois
 

En vedette (20)

Algorithmique iii
Algorithmique iiiAlgorithmique iii
Algorithmique iii
 
Info1 cours 3-codage-mi-sys num
Info1  cours 3-codage-mi-sys numInfo1  cours 3-codage-mi-sys num
Info1 cours 3-codage-mi-sys num
 
Codage cours 2-software-mi-
Codage  cours 2-software-mi-Codage  cours 2-software-mi-
Codage cours 2-software-mi-
 
Info1 cours 1-software-st&sm1-mi-
Info1  cours 1-software-st&sm1-mi-Info1  cours 1-software-st&sm1-mi-
Info1 cours 1-software-st&sm1-mi-
 
Algorithmique_et_programmation_part3_V2
Algorithmique_et_programmation_part3_V2Algorithmique_et_programmation_part3_V2
Algorithmique_et_programmation_part3_V2
 
Rendez votre code Python plus beau !
Rendez votre code Python plus beau !Rendez votre code Python plus beau !
Rendez votre code Python plus beau !
 
Python packaging
Python packagingPython packaging
Python packaging
 
Td pascal tdD
Td pascal tdDTd pascal tdD
Td pascal tdD
 
SGBDR - ACCESS
SGBDR - ACCESSSGBDR - ACCESS
SGBDR - ACCESS
 
Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2Algorithmique_et_programmation_part2
Algorithmique_et_programmation_part2
 
Python et les bases de données non sql
Python et les bases de données non sqlPython et les bases de données non sql
Python et les bases de données non sql
 
Base NoSql et Python
Base NoSql et PythonBase NoSql et Python
Base NoSql et Python
 
Bonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHPBonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHP
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)
 
La guerre d'algérie en images
La guerre d'algérie en imagesLa guerre d'algérie en images
La guerre d'algérie en images
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec python
 
Développement de la personnalité : La désintégration positive
Développement de la personnalité : La désintégration positiveDéveloppement de la personnalité : La désintégration positive
Développement de la personnalité : La désintégration positive
 
Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Seminaire Borland UML (2003)
Seminaire Borland UML (2003)
 
Wordpress : Attaque, Audit et Protection | Hackfest 2015
Wordpress : Attaque, Audit et Protection | Hackfest 2015Wordpress : Attaque, Audit et Protection | Hackfest 2015
Wordpress : Attaque, Audit et Protection | Hackfest 2015
 
1er cours
1er cours1er cours
1er cours
 

Similaire à Algorithmique iv

Similaire à Algorithmique iv (20)

Smb20 sur 20
Smb20 sur 20Smb20 sur 20
Smb20 sur 20
 
2-Algo.ppt
2-Algo.ppt2-Algo.ppt
2-Algo.ppt
 
Langage c
Langage cLangage c
Langage c
 
Chap1_Entrees_Sorties.pptx
Chap1_Entrees_Sorties.pptxChap1_Entrees_Sorties.pptx
Chap1_Entrees_Sorties.pptx
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
 
Seance 3- Programmation en langage C
Seance 3- Programmation en langage C Seance 3- Programmation en langage C
Seance 3- Programmation en langage C
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++
 
Langage de Programmation.pdf
Langage de Programmation.pdfLangage de Programmation.pdf
Langage de Programmation.pdf
 
Chap1: Cours en C++
Chap1: Cours en C++Chap1: Cours en C++
Chap1: Cours en C++
 
Cours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdfCours - TC - Histoire Algorithmique.pdf
Cours - TC - Histoire Algorithmique.pdf
 
Ladder
LadderLadder
Ladder
 
Chapitre 1 rappel
Chapitre 1 rappelChapitre 1 rappel
Chapitre 1 rappel
 
Chapitre 1 rappel
Chapitre 1 rappelChapitre 1 rappel
Chapitre 1 rappel
 
Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)
 
La programmation fonctionnelle en javascript / PF
La programmation fonctionnelle en javascript / PFLa programmation fonctionnelle en javascript / PF
La programmation fonctionnelle en javascript / PF
 
Boost.SIMD
Boost.SIMDBoost.SIMD
Boost.SIMD
 
Chapitre 3 - Généralités sur le langage C.pdf
Chapitre 3 - Généralités sur le langage C.pdfChapitre 3 - Généralités sur le langage C.pdf
Chapitre 3 - Généralités sur le langage C.pdf
 
Formation VBA Excel
Formation VBA ExcelFormation VBA Excel
Formation VBA Excel
 
Linq Tech Days08 Lux
Linq Tech Days08 LuxLinq Tech Days08 Lux
Linq Tech Days08 Lux
 
03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdf03_Prog_C_Fonctions.pdf
03_Prog_C_Fonctions.pdf
 

Plus de Rachid Lajouad

4 representationprocessindustrielslastversion
4 representationprocessindustrielslastversion4 representationprocessindustrielslastversion
4 representationprocessindustrielslastversionRachid Lajouad
 
3 identification des systèmes
3 identification des systèmes3 identification des systèmes
3 identification des systèmesRachid Lajouad
 
2 correction des systèmes asservis
2 correction des systèmes asservis2 correction des systèmes asservis
2 correction des systèmes asservisRachid Lajouad
 
1 asservissements linéaires continus
1 asservissements linéaires continus1 asservissements linéaires continus
1 asservissements linéaires continusRachid Lajouad
 
Accès aux bases de données via jdbc
Accès aux bases de données via jdbcAccès aux bases de données via jdbc
Accès aux bases de données via jdbcRachid Lajouad
 

Plus de Rachid Lajouad (17)

4 representationprocessindustrielslastversion
4 representationprocessindustrielslastversion4 representationprocessindustrielslastversion
4 representationprocessindustrielslastversion
 
3 identification des systèmes
3 identification des systèmes3 identification des systèmes
3 identification des systèmes
 
2 correction des systèmes asservis
2 correction des systèmes asservis2 correction des systèmes asservis
2 correction des systèmes asservis
 
1 asservissements linéaires continus
1 asservissements linéaires continus1 asservissements linéaires continus
1 asservissements linéaires continus
 
Accès aux bases de données via jdbc
Accès aux bases de données via jdbcAccès aux bases de données via jdbc
Accès aux bases de données via jdbc
 
Chap4 cliserrmi
Chap4 cliserrmiChap4 cliserrmi
Chap4 cliserrmi
 
Chap3 clientsrvr
Chap3 clientsrvrChap3 clientsrvr
Chap3 clientsrvr
 
Chap2 clientsrvr
Chap2 clientsrvrChap2 clientsrvr
Chap2 clientsrvr
 
Chap1 clientsrvr
Chap1 clientsrvrChap1 clientsrvr
Chap1 clientsrvr
 
Tests unitaires
Tests unitairesTests unitaires
Tests unitaires
 
Qualite1
Qualite1Qualite1
Qualite1
 
La mesure logicielle
La mesure logicielleLa mesure logicielle
La mesure logicielle
 
Tableau de bord
Tableau de bordTableau de bord
Tableau de bord
 
Planifier projet
Planifier projetPlanifier projet
Planifier projet
 
Gestion de projet
Gestion de projetGestion de projet
Gestion de projet
 
Structures donneenew
Structures donneenewStructures donneenew
Structures donneenew
 
Structures donnee
Structures donneeStructures donnee
Structures donnee
 

Dernier

L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...Faga1939
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfachrafbrahimi1
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfssuserc72852
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfabatanebureau
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.Txaruka
 
Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxRayane619450
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprisesMajdaKtiri2
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...Nguyen Thanh Tu Collection
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film françaisTxaruka
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film françaisTxaruka
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaireTxaruka
 

Dernier (13)

Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptx
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 

Algorithmique iv

  • 1. Algorithmique et programmation procédurale Chap III :Procedures, Fonctions. Lajouad Rachid Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 2. Préliminaire La méthodologie de base de l'informatique est : • 1 Abstraire • 2 Décomposer • 3 Combiner Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 3. Programme/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 Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 4. Programme/Sous-programme Le paradigme de la programmation structure propose deux types de sous-programmes: • Les fonctions • Les procédures Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 5. 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 Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 6. Les 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 Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 7. Exemple fonction min2 (a,b : Entier) : Entier debut si a > b alors retourner b sinon retourner a finsi fin fonction min3 (a,b,c : Entier) : Entier debut retourner min2(a,min2(b,c)) fin Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 8. Procé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) Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 9. Procé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 Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 10. Exemple procédure calculerMinMax3 (E a,b,c : Entier; S m,M : Entier) debut m ← minimum3(a,b,c) M ← maximum3(a,b,c) Fin Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 11. Les fonctions en langage C • Syntaxe : Type NomFonction(params …) { instructions; return …; } Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 12. Les 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 Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 13. Exemple float sphere (int ray) { float resultat; resultat = ray * ray *ray; resultat = 4 * PI *resultat; resultat = resultat /3; return resultat; } Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
  • 14. Exercice 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). Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale