0% ont trouvé ce document utile (0 vote)
13 vues14 pages

Chapitre 4

Le document présente un module sur les algorithmes et structures de données, se concentrant sur les fondamentaux de la programmation, y compris les structures de contrôle, les fonctions et les procédures. Il définit les caractéristiques des fonctions et des procédures, ainsi que le concept de récursivité, et propose des exercices pratiques pour renforcer la compréhension. Enfin, il aborde des algorithmes récursifs et des exercices sur les conditions.

Transféré par

kenmeugne.walther
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
13 vues14 pages

Chapitre 4

Le document présente un module sur les algorithmes et structures de données, se concentrant sur les fondamentaux de la programmation, y compris les structures de contrôle, les fonctions et les procédures. Il définit les caractéristiques des fonctions et des procédures, ainsi que le concept de récursivité, et propose des exercices pratiques pour renforcer la compréhension. Enfin, il aborde des algorithmes récursifs et des exercices sur les conditions.

Transféré par

kenmeugne.walther
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ALGORITHMES ET STRUCTURES DES DONNEES 1

PLAN DU MODULE 1

LES FONDAMENTAUX DE LA PROGRAMMATION

1. Généralités 3. Les structures de contrôle


1.1 Objectifs du cours 3.1 Conditions (if /else, switch)
1.2 Présentation générale de l’algorithmique 3.2 Boucles (for, while, do-while)
1.3 Définition de l’algorithmique 3.3 Instructions de rupture (break, continue)
1.4 Analyse et résolution d’un problème 3.4 Exercices d’application

2. Concepts de base
4. Les fonctions et les procédures
2.1 Types de données
4.1 Définition, Structure et caractéristiques d’une fonction
2.2 Comment utiliser les données de l’algorithme ?
4.2 Définition et structure d’une procédure
2.3 Structure d’un algorithme et déclarations
4.3 Différences entre une fonction et une procédure
2.4 Opérateurs (arithmétiques, logiques, comparaison)
4.4 La récursivité
2;5 Lecture et écriture
4.5 Exercices d’application
2.6 Exercices d’application
ALGORITHMES ET STRUCTURES DES DONNEES 1

4. LES FONCTIONS ET LES PROCEDURES

Dans l'univers de la programmation structurée, les fonctions et les procédures constituent les piliers fondamentaux de la modularité et de
l'organisation du code. Ces structures d’encapsulation permettent de décomposer des problèmes complexes en sous-tâches plus simples et
gérables, favorisant ainsi la réutilisabilité, la lisibilité et la maintenance des programmes. Que ce soit pour éviter la redondance, améliorer la clarté
algorithmique ou faciliter le travail collaboratif, ces blocs fonctionnels représentent une abstraction essentielle qui élève le développement logiciel
au-delà de la simple séquence d'instructions pour en faire une architecture cohérente et évolutive.
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.1 DEFINITION ET STRUCTURE D’UNE FONCTION

Une fonction est un sous-programme qui retourne une valeur et peut être utilisée dans une expression. Les caractéristiques d’une fonction sont :
• Retourne obligatoirement une valeur
• Appelée dans une expression
• Possède un type de retour
• Utilise le mot-clé « Retourner »

fonction CalculerMoyenne (a: réel, b: réel) : réel


fonction NomFonction (param1: type, param2: type, ...) : type
Début
début
retourner (a + b) / 2
// Instructions
Fin
retourner valeur
// Appel
fin
moyenne ← CalculerMoyenne (15, 20)
afficher("La moyenne est : ", moyenne)
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.2 DEFINITION ET STRUCTURE D’UNE PROCEDURE


Une procédure est un sous-programme qui ne retourne pas de valeur et est appelée comme une instruction. Les caractéristiques d’une procédure
sont :
• Ne retourne pas de valeur
• Appelée comme une instruction simple
• Peut modifier des variables globales ou paramètres
• N’a pas de type de retour
procedure AfficherMenu ( )
Début
procedure NomProcedure (param1: type, param2: type, ...) afficher("1. Ajouter un élément")
début afficher("2. Supprimer un élément")
// Instructions afficher("3. Quitter")
fin Fin
// Appel
AfficherMenu ( )
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.2.1 CONFIGURATION SOUS LARP


ALGORITHMES ET STRUCTURES DES DONNEES 1

4.2.2 UTILISATION PRATIQUE SOUS LARP

Sous LARP : Résultat :


ALGORITHMES ET STRUCTURES DES DONNEES 1

4.3. TABLEAU COMPARATIF ENTRE UN FONCTION ET UNE PROCEDURE

Aspect Fonction Procédure

Valeur de retour Oui (obligatoirement) Non

Type de retour Défini Aucun

Mot-clé retour Retourner -

Appel Dans une expression Instruction seule

Usage Calculer une valeur Effectuer une action


ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4 LA RECURSIVITE

La récursivité est un concept fondamental en informatique où une fonction s'appelle elle-même pour résoudre un problème. C'est une approche
"diviser pour régner" qui brise un problème complexe en sous-problèmes identiques mais plus simples.
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4.1 DEFINITION ET STRUCTURE DE LA RECURSIVITE

Une fonction récursive est une fonction qui :


• S’appelle elle-même directement ou indirectement
• Décompose un problème en versions plus petites de lui-même
• Possède un cas de base qui s’arrête à la récursion
Les deux éléments clés de la récursivité sont :

• Cas de base (Condition d’arrêt) • Appel récursif


• Arrête la récursion • Appel de la fonction avec un paramètre modifié
• Évite les appels infinis • Doit se rapprocher du cas de base
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4.2 COMMENT FAIRE USAGE DE LA RECURSIVITE?


Fonction factoriel (x : Entier) : Entier
Déclaration des variables locales
Exemple : F, i : Entiers
==========================================
Algorithme calc_factoriel Début
Déclaration des variables Si x = 0 ou x = 1 Alors
N : Entier F -- 1
Début Sinon
Ecrire (« Veuillez écrire un nombre positif ») F -- 1
Lire N Pour i allant de 2 à x Faire
Ecrire (« Le factoriel du nombre », N, « est : », factoriel(N)) F -- F * i
Fin FinPour
FinSi
Retourne F
Fin
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4.2 COMMENT FAIRE USAGE DE LA RECURSIVITE?


Algorithme calc_factoriel
Cas de Base : F -- 1
Fonction Factoriel (x : Entier) : Entier
Cas Récursif (itérations)
Déclaration des variables locales
F -- 1 * 2 (2)
F, i : Entiers
F -- 2 * 3 (6)
Début
F -- 6 * 4 (24)
Si x = 0 ou x = 1 Alors
F -- 24 * 5 (120)
Retourne 1
Illustration de la récursivité
Sinon
Factoriel (1) = 1
Retourne x * Factoriel (x-1)
Factoriel (2) = 2 * Factoriel(1)
FinSi
Factoriel (3) = 3 * Factoriel(2)
Fin


Factoriel (N) = N * Factoriel(N-1)
Début
Ecrire (« Le factoriel du nombre », N, « est : », Factoriel (N))
Factoriel (N)
Fin
ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4.3 EXERCICES SUR LA RECURSIVITE

Problème n° 1 Problème n° 2

Écrire un algorithme récursif qui calcule la somme des entiers de 1 à n. Écrire un algorithme récursif qui calcule la puissance Xn d’un entier X

par un entier n positif.

Problème n° 3 Problème n° 4

Écrire un algorithme récursif qui calcule le PGCD de deux nombres Écrire un algorithme récursif qui convertit un nombre décimal en

entiers positifs (Exple : 561 et 357) . binaire.


ALGORITHMES ET STRUCTURES DES DONNEES 1

4.4.3 EXERCICES SUR LA RECURSIVITE

Problème n° 5 Problème n° 6

Écrire un algorithme qui permet de déterminer les combinaisons Écrire un algorithme qui demande à l’utilisateur de saisir un entier

possibles de p éléments parmi n sachant que 𝐶 peut être calculé par : positif n. ensuite, à l’aide d’une fonction récursive, l’algorithme

! calcule et affiche tous les termes de la suite de Fibonacci, inférieurs


𝐶 =𝐶 +𝐶 =
! !
ou égaux à n. la suite de Fibonacci est définie comme suit :
𝐶 =1
U0 = 0

𝐶 =n U1 = 1
Un+2 = Un+1 + Un
ALGORITHMES ET STRUCTURES DES DONNEES 1

EXERCICES SUR LES CONDITIONS

1) Algorithme qui indique si le chiffre saisi est nul, positif ou négatif. 2) Algorithme qui échange les contenus de deux données numériques si

elles sont de même signe, sinon il met la somme des deux dans la première
3) Écrire un algorithme permettant de saisir trois notes (sur 20) d’un
donnée et leur produit dans la seconde.
apprenant, calculant sa moyenne et affichant cette moyenne avec

la mention(« Très bien » à partir de 16, « Bien » entre 14 et 16,


4) Écrire un algorithme qui affiche la ou les solutions d’une équation du
« Assez bien » entre 12 et 14, « Passable » entre 10 et 12,
second degré de la forme ax2 + bx + c.
« Insuffisant » en dessous de 10)

Vous aimerez peut-être aussi