SlideShare ist ein Scribd-Unternehmen logo
1 von 5
Page 1/5
Récursivité : Série d'exercices
Exercice 1
Écrire une procédure qui affiche les entiers par ordre décroissant, de 10 jusqu’à 1. Proposer
une solution itérative et une autre récursive.
Exercice 2
Soit la procédure itérative suivante :
procedure affiche;
var a, b: integer;
begin
for a := 0 to 3 do
for b := 0 to 9 do
writeln(a * 10 + b);
end;
Transformer cette procédure en une procédure récursive.
Exercice 3
Écrire une procédure récursive permettant de saisir un entier N pair (1<N<31).
Exercice 4
Écrire une procédure récursive permettant de remplir un tableau T par N entiers positifs.
Exercice 4.2
Écrire une procédure récursive permettant d'afficher un tableau T.
Exercice 5
Écrire une fonction récursive permettant de calculer la factorielle d’un entier N donné.
Exercice 6
On appelle "palindrome" un mot ou une phrase qui se lit de la même façon à l'endroit comme
à l'envers, sans tenir compte des espaces.
Exemple : le mot "ABCBA" est un palindrome.
Ecrire une fonction récursive permettant de vérifier si une chaîne de caractères CH est un
palindrome.
Exercice 7
Ecrire une fonction récursive permettant de vérifier la parité d’un entier N.
Exercice 8
Écrire une fonction récursive permettant d'effectuer la multiplication de deux entiers positifs
(notés p et q) donnés, en utilisant uniquement l'addition entière.
En effet, pxq = p+p+p+…+p (q fois).
Exercice 9
Écrire une fonction récursive permettant de calculer la somme des N premiers entiers.
Exercice 10
Écrire une fonction récursive permettant de calculer X
n
pour X réel et n entier relatif.
Exercice 11
Écrire une fonction récursive permettant de calculer le PGCD de deux entiers A et B par la
méthode d' EUCLIDE puis la méthode de différence.
Exercice 12
Écrire une fonction récursive permettant de calculer le PPCM de deux entiers A et B.
Page 2/5
Exercice 13
La suite de Fibonacci est définie par : Un
= Un-1
+ Un-2
avec U1
= 1 et U2
= 1. Ecrire une
fonction récursive permettant de calculer le N
ème
terme de la suite de Fibonacci.
Exercice 14
Écrire une procédure récursive permettant de décomposer un entier N en facteurs premiers.
(Exemple : 432 = 2*2*2*2*3*3*3).
Exercice 15
Un nombre parfait est un nombre qui est égale à la somme de ses diviseurs sauf lui même
exemple : 6 est parfait car 6=1+2+3
Écrire une fonction récursive qui calcule la somme de diviseurs d'un entier N sauf lui-même.
Exercice 16
Un entier supérieur à 1 est dit premier s’il n’est divisible que par 1 et par lui-même.
Écrire une fonction récursive qui vérifie si un entier N est premier ou non.
Exercice 17
Soit l’exponentielle :
2 3
1 ...
1 2 ! 3 ! !
n
x x x x x
e
n
+ + + + +
Faire une fonction fact(n) qui renvoie n!.
Faire une fonction puiss(x, n) qui renvoie xn
.
Ecrire une fonction récursive qui calcule la valeur approchée de ex
en faisant appel aux
fonctions fact et puiss.
Exercice 18
Calculer par récursivité
n
nS
1
...
4
1
3
1
2
1
1)( +++++= pour tout n>0.
Exercice 19
Calculer par récursivité
12
1
)1(...
7
1
5
1
3
1
1)(
+
−++−+−=
n
nS n
pour tout n>=0.
Exercice 20
Écrire une fonction récursive qui permet de chercher le maximum dans un tableau T de n entiers.
Écrire une fonction récursive qui permet de chercher le minimum dans un tableau T de n entiers.
Exercice 21
Écrire une fonction récursive qui détermine la valeur la plus proche d'un entier m donné dans
un tableau T de n entiers.
Exercice 22
Écrire une fonction récursive qui teste l'existence d'un élément donné dans un tableau donné
en utilisant une recherche séquentielle.
Exercice 23
Écrire une fonction récursive qui teste l'existence d'un élément donné dans un tableau donné
en utilisant une recherche dichotomique.
Exercice 24
Écrire une procédure récursive qui permet de décaler tous les éléments d’un tableau d’une
position à droite à partir de la position p.
Exercice 25
Écrire une procédure récursive qui permet d’inverser les éléments d’une partie d’un tableau
compris entre la position p et n.
Page 3/5
Exercice 26
Écrire une procédure récursive qui permute les n éléments consécutifs deux à deux d’un
tableau T.
Exercice 27
Écrire une fonction récursive qui détermine la valeur maximale de deux entiers positifs sans
utiliser < et >.
Exercice 28
Soit une chaîne de caractères ; supposons qu'on veuille faire aussi bien la fonction que la
procédure qui nous renvoie l'inverse de cette chaîne.
Exercice 29
Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la
méthode de tri par sélection.
Exercice 30
Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la
méthode de tri par insertion.
Exercice 31
Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la
méthode de tri à bulles.
Exercice 32
Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la
méthode de tri Shell.
Exercice 33
Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la
méthode de tri par fusion.
Exercice 34
Ecrire une procédure récursive qui supprime toutes les occurrences d'un caractère donné d'une
chaîne de caractère.
Exercice 35
Écrire une fonction qui compte le nombre d’occurrences d’un caractère c dans une chaîne ch.
Exercice 36
Écrire une fonction récursive qui calcule la somme des chiffres d'un nombre entier.
Exercice 37
Écrire une fonction récursive qui détermine le nombre des chiffres d'un entier.
Exercice 38
Deux mots sont des anagrammes si l’un est une permutation des lettres de l’autre.
Par exemple les mots suivants sont des anagrammes :
– aimer et maire
– chien et niche
Par définition, on considère que deux mots vides sont des anagrammes.
Proposez une fonction récursive qui permet de savoir si deux mots sont des anagrammes.
Exercice 39
Écrire une fonction récursive qui teste la présence d'un caractère dans une chaîne de
caractère.
Exercice 40
Écrire une fonction récursive nommée suppr_car qui permet de supprimer la première
occurrence d'un caractère d'une chaîne.
Page 4/5
Exercice 41
En utilisant les deux fonctions précédentes (teste et suppr_car), proposez une fonction
récursive constructible qui permet de savoir si un mot est constructible à partir d'un
ensemble de lettres. Le mot et l'ensemble de lettres sont représentés à l'aide d'une chaîne de
caractères. Si une lettre apparaît deux fois dans le mot, il faut qu'elle apparaissent au moins
deux fois dans l'ensemble de lettres.
Par exemple :
Constructible ("BONJOUR","BJNORUYZ") retournera faux (le 'O' n'apparaissant qu'une seule
fois dans "BJNORUYZ")
Constructible ("TRALALA","LLAAAAART") retournera vrai
Constructible ("","ABC") retournera vrai
Exercice 42
Le triangle de Pascal est le tableau des coefficients qui sont utilisés pour le développement de
certaines expressions comme (a+b)² ou (a+b)
n
.
Ce triangle est le suivant :
0 : 1 (a+b)
0
= 1
1 : 1 1 (a+b)
1
= 1a + 1b
2 : 1 2 1 (a+b)
2
= 1a
2
+ 2ab + 1b
2
3 : 1 3 3 1 (a+b)
3
= 1a
3
+ 3a
2
b + 3ab
2
+ 1b
3
4 : 1 4 6 4 1 (a+b)
4
= 1a
4
+ 4a
3
b + 6a
2
b
2
+ 4ab
3
+ 1b
4
Écrire une fonction récursive permettant de déterminer les valeurs du triangle pascal.
Exercice 43
Écrire une fonction récursive MacCarthy qui calcule MacCarthy(n) selon la définition suivante :
Si n>100 MacCarthy(n) = n-10
Si n≤100 MacCarthy(n) = MacCarthy( MacCarthy(n+11))
Exercice 44
Écrire une fonction récursive calculant la fonction d'Ackermann définie comme suit :
n+1 si m = 0
( , ) Ack (m-1, 1) si m > 0 et n = 0
Ack (m-1, Ack (m, n-1)) si m > 0 et n > 0
Ack m n
⎧
⎪
= ⎨
⎪
⎩
Calculer Ack(0,3) et Ack(2,2)
Exercice 45 Évaluation d’une chaîne de caractère
Soit une chaîne de caractères du type s="5+123-4+67-2" ; Écrire une fonction récursive qui
évalue cette chaîne de caractères.
Exercice 46 Vers une mini-calculatrice
Soit une chaîne de caractères du type s="5+3*4/2-5*3+4*7/2" ; faisons le programme qui
évalue cette chaîne de caractères.
Exercice 47
Écrire une procédure récursive qui affiche les combinaisons (les différentes permutations de n
objets) d'une chaîne de caractères.
Par exemple, les anagrammes des lettres de "abc" sont :
"abc", "acb", "bac", "bca", "cab" et "cba".
Page 5/5
Exercice 48
Écrire un programme permettant d'évaluer un nombre romain en son équivalant en
décimal. Sachant que les chiffres romains :
• M = 1000
• D = 500
• C = 100
• L = 50
• X = 10
• V = 5
• I = 1
On constate que les nombres s'arrêtaient aux milliers.
Exemples d'écriture des nombres romains :
• 4 s'écrit IV.
• 6 s'écrit VI.
• 9 s'écrit IX.
• 15 s'écrit XV.
• 47 s'écrit XLVII.
• 149 s'écrit CXLIX (et non CIL, comme on pourrait le penser) On constate ici la
décomposition 100+40+9 = C + XL + IX
• 1490 s'écrit MCDXC = 1000 + 400 + 90 = M + CD + XC
Exercice 49
Écrire un programme qui utilise une procédure récursive permettant d’afficher les caractères
d’une chaîne sous la forme indiquée dans l’exemple suivant :
Exemple : Soit la chaîne "TURBO"
TURBO
TURB
TUR
TU
T
Exercice 50
Écrire une fonction booléenne récursive qui teste si deux fichiers d’entiers sauvegardés sur
disque dur, sont égaux ou non.
Exercice 51
Écrire un programme qui utilise une fonction récursive pour trouver le plus petit nombre d’un
fichier d’entiers sauvegardés sur disque dur, puis l’affiche à l’écran.
Exercice 52
On considère la procédure suivante écrite en Pascal :
Procedure P(n : integer);
begin
if (n>0)
A) Pour n=5, la sortie de P(n) affiche 5 1 1.
B) Pour n=5, la sortie de P(n) affiche 1 5 1.
C) Pour n=7, la sortie de P(n) affiche 1 1 5.
D) Pour n=9, la sortie de P(n) affiche 2 3 1.
E) P(n) se termine pour toutes les valeurs entières de n.
then begin
P(n div 4);
writeln(n);
P(n div 3);
end;
end;

Weitere ähnliche Inhalte

Was ist angesagt?

Serie recurrents & arithmetiques
Serie recurrents & arithmetiquesSerie recurrents & arithmetiques
Serie recurrents & arithmetiquesmohamed_SAYARI
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASDInes Ouaz
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018salah fenni
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siNarûtö Bàl'Sèm
 
Serie algos approximationx
Serie algos approximationxSerie algos approximationx
Serie algos approximationxmohamed_SAYARI
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfsalah fenni
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitresborhen boukthir
 
Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Hichem Kemali
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesInes Ouaz
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximationWael Ismail
 
Chapitre 4 récursivité
Chapitre 4 récursivitéChapitre 4 récursivité
Chapitre 4 récursivitéSana Aroussi
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombressalah fenni
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmationborhen boukthir
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdfsalah fenni
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximationmohamed_SAYARI
 

Was ist angesagt? (20)

Serie recurrents & arithmetiques
Serie recurrents & arithmetiquesSerie recurrents & arithmetiques
Serie recurrents & arithmetiques
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASD
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
Serie
SerieSerie
Serie
 
Serie algos approximationx
Serie algos approximationxSerie algos approximationx
Serie algos approximationx
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
Exercices algo
Exercices algoExercices algo
Exercices algo
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitres
 
Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)Série sous programmes (bac scientifique)
Série sous programmes (bac scientifique)
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de données
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
 
Chapitre 4 récursivité
Chapitre 4 récursivitéChapitre 4 récursivité
Chapitre 4 récursivité
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombres
 
bac info : série récursivité
bac info : série récursivitébac info : série récursivité
bac info : série récursivité
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmation
 
Récursivité
RécursivitéRécursivité
Récursivité
 
Algorithmes de tri
Algorithmes de triAlgorithmes de tri
Algorithmes de tri
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdf
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximation
 

Andere mochten auch

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
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Dictionnaire de mathématiques
Dictionnaire de mathématiquesDictionnaire de mathématiques
Dictionnaire de mathématiquessalah fenni
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
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
 
Exercices en langage c
Exercices en langage cExercices en langage c
Exercices en langage cDaoua Lotfi
 
Coran (Riwayet kaloun)
Coran (Riwayet kaloun)Coran (Riwayet kaloun)
Coran (Riwayet kaloun)salah fenni
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmiqueelharraj
 
Fonctions chaine
Fonctions chaineFonctions chaine
Fonctions chaineAfef Ilahi
 
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationLe livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationChingongou ­
 
Nature and structure of language
Nature and structure of languageNature and structure of language
Nature and structure of languageZichara Jumawan
 
Tp1 compte rendu en langage c
Tp1 compte rendu en langage cTp1 compte rendu en langage c
Tp1 compte rendu en langage cEbrima NJIE
 
Chapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesChapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesSana Aroussi
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)abdellah12
 
exercices en C
exercices en Cexercices en C
exercices en Ccoursuniv
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Taller De Prepación De Pruebas Orales
Taller De Prepación De Pruebas OralesTaller De Prepación De Pruebas Orales
Taller De Prepación De Pruebas OralesRodrigo Cornejo Zanni
 

Andere mochten auch (20)

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é)
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
Dictionnaire de mathématiques
Dictionnaire de mathématiquesDictionnaire de mathématiques
Dictionnaire de mathématiques
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
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)
 
Exercices en langage c
Exercices en langage cExercices en langage c
Exercices en langage c
 
Coran (Riwayet kaloun)
Coran (Riwayet kaloun)Coran (Riwayet kaloun)
Coran (Riwayet kaloun)
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Fonctions chaine
Fonctions chaineFonctions chaine
Fonctions chaine
 
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationLe livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
 
Td pascal tdD
Td pascal tdDTd pascal tdD
Td pascal tdD
 
Nature and structure of language
Nature and structure of languageNature and structure of language
Nature and structure of language
 
Tp1 compte rendu en langage c
Tp1 compte rendu en langage cTp1 compte rendu en langage c
Tp1 compte rendu en langage c
 
Chapitre 3 structures séquentielles
Chapitre 3 structures séquentiellesChapitre 3 structures séquentielles
Chapitre 3 structures séquentielles
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
 
exercices en C
exercices en Cexercices en C
exercices en C
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
08 dinámica de la geosfera
08 dinámica de la geosfera08 dinámica de la geosfera
08 dinámica de la geosfera
 
Taller De Prepación De Pruebas Orales
Taller De Prepación De Pruebas OralesTaller De Prepación De Pruebas Orales
Taller De Prepación De Pruebas Orales
 
17romans PDF
17romans PDF17romans PDF
17romans PDF
 

Ähnlich wie Exercices en turbo pascal sur la récursivité

eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdiversHajar Yazine
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
ExercicescorrigesdiversKarim Amane
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)DriNox NordisTe
 
Chapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfChapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfMbarkiIsraa
 
Serie tri revision_3si
Serie tri revision_3siSerie tri revision_3si
Serie tri revision_3siRiadh Harizi
 
Chaitre 3 Fonctions logiques (1).pptx
Chaitre 3 Fonctions logiques (1).pptxChaitre 3 Fonctions logiques (1).pptx
Chaitre 3 Fonctions logiques (1).pptxMohammedJaafari3
 
récursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de trirécursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de triYassine Anddam
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétudeSana Aroussi
 
CAPES maths 2019 composition 1 (option informatique)
CAPES maths 2019 composition 1 (option informatique)CAPES maths 2019 composition 1 (option informatique)
CAPES maths 2019 composition 1 (option informatique)Dany-Jack Mercier
 
Les vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxLes vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxrezgui10
 
Les vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdfLes vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdfrezgui10
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique Smee Kaem Chann
 

Ähnlich wie Exercices en turbo pascal sur la récursivité (20)

eExercices corrigesdivers
eExercices corrigesdiverseExercices corrigesdivers
eExercices corrigesdivers
 
Exercicescorrigesdivers
ExercicescorrigesdiversExercicescorrigesdivers
Exercicescorrigesdivers
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
5e8a000b9840a.pdf
5e8a000b9840a.pdf5e8a000b9840a.pdf
5e8a000b9840a.pdf
 
Chapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdfChapitre 2 -Complexité des problèmes avec correction.pdf
Chapitre 2 -Complexité des problèmes avec correction.pdf
 
TP C++ : enoncé
TP C++ : enoncéTP C++ : enoncé
TP C++ : enoncé
 
Serie tri revision_3si
Serie tri revision_3siSerie tri revision_3si
Serie tri revision_3si
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Chaitre 3 Fonctions logiques (1).pptx
Chaitre 3 Fonctions logiques (1).pptxChaitre 3 Fonctions logiques (1).pptx
Chaitre 3 Fonctions logiques (1).pptx
 
récursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de trirécursivité algorithmique et complexité algorithmique et Les algorithmes de tri
récursivité algorithmique et complexité algorithmique et Les algorithmes de tri
 
Chapitre 3 NP-complétude
Chapitre 3 NP-complétudeChapitre 3 NP-complétude
Chapitre 3 NP-complétude
 
Video
VideoVideo
Video
 
TP5_2020.pdf
TP5_2020.pdfTP5_2020.pdf
TP5_2020.pdf
 
CAPES maths 2019 composition 1 (option informatique)
CAPES maths 2019 composition 1 (option informatique)CAPES maths 2019 composition 1 (option informatique)
CAPES maths 2019 composition 1 (option informatique)
 
cours algorithme
cours algorithmecours algorithme
cours algorithme
 
Les vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxLes vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptx
 
Les vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdfLes vecteurs seconde2020.pdf
Les vecteurs seconde2020.pdf
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique
 

Kürzlich hochgeladen

MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptssusercbaa22
 
Grammaire pour les élèves de la 6ème.doc
Grammaire pour les élèves de la  6ème.docGrammaire pour les élèves de la  6ème.doc
Grammaire pour les élèves de la 6ème.docKarimKhrifech
 
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
 
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
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxssuserbd075f
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxlamourfrantz
 
présentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurprésentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurdinaelchaine
 
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
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
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
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprisesMajdaKtiri2
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxpopzair
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
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
 

Kürzlich hochgeladen (20)

MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
 
Grammaire pour les élèves de la 6ème.doc
Grammaire pour les élèves de la  6ème.docGrammaire pour les élèves de la  6ème.doc
Grammaire pour les élèves de la 6ème.doc
 
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
 
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
 
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
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptx
 
présentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurprésentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteur
 
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.
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
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
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptx
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
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
 

Exercices en turbo pascal sur la récursivité

  • 1. Page 1/5 Récursivité : Série d'exercices Exercice 1 Écrire une procédure qui affiche les entiers par ordre décroissant, de 10 jusqu’à 1. Proposer une solution itérative et une autre récursive. Exercice 2 Soit la procédure itérative suivante : procedure affiche; var a, b: integer; begin for a := 0 to 3 do for b := 0 to 9 do writeln(a * 10 + b); end; Transformer cette procédure en une procédure récursive. Exercice 3 Écrire une procédure récursive permettant de saisir un entier N pair (1<N<31). Exercice 4 Écrire une procédure récursive permettant de remplir un tableau T par N entiers positifs. Exercice 4.2 Écrire une procédure récursive permettant d'afficher un tableau T. Exercice 5 Écrire une fonction récursive permettant de calculer la factorielle d’un entier N donné. Exercice 6 On appelle "palindrome" un mot ou une phrase qui se lit de la même façon à l'endroit comme à l'envers, sans tenir compte des espaces. Exemple : le mot "ABCBA" est un palindrome. Ecrire une fonction récursive permettant de vérifier si une chaîne de caractères CH est un palindrome. Exercice 7 Ecrire une fonction récursive permettant de vérifier la parité d’un entier N. Exercice 8 Écrire une fonction récursive permettant d'effectuer la multiplication de deux entiers positifs (notés p et q) donnés, en utilisant uniquement l'addition entière. En effet, pxq = p+p+p+…+p (q fois). Exercice 9 Écrire une fonction récursive permettant de calculer la somme des N premiers entiers. Exercice 10 Écrire une fonction récursive permettant de calculer X n pour X réel et n entier relatif. Exercice 11 Écrire une fonction récursive permettant de calculer le PGCD de deux entiers A et B par la méthode d' EUCLIDE puis la méthode de différence. Exercice 12 Écrire une fonction récursive permettant de calculer le PPCM de deux entiers A et B.
  • 2. Page 2/5 Exercice 13 La suite de Fibonacci est définie par : Un = Un-1 + Un-2 avec U1 = 1 et U2 = 1. Ecrire une fonction récursive permettant de calculer le N ème terme de la suite de Fibonacci. Exercice 14 Écrire une procédure récursive permettant de décomposer un entier N en facteurs premiers. (Exemple : 432 = 2*2*2*2*3*3*3). Exercice 15 Un nombre parfait est un nombre qui est égale à la somme de ses diviseurs sauf lui même exemple : 6 est parfait car 6=1+2+3 Écrire une fonction récursive qui calcule la somme de diviseurs d'un entier N sauf lui-même. Exercice 16 Un entier supérieur à 1 est dit premier s’il n’est divisible que par 1 et par lui-même. Écrire une fonction récursive qui vérifie si un entier N est premier ou non. Exercice 17 Soit l’exponentielle : 2 3 1 ... 1 2 ! 3 ! ! n x x x x x e n + + + + + Faire une fonction fact(n) qui renvoie n!. Faire une fonction puiss(x, n) qui renvoie xn . Ecrire une fonction récursive qui calcule la valeur approchée de ex en faisant appel aux fonctions fact et puiss. Exercice 18 Calculer par récursivité n nS 1 ... 4 1 3 1 2 1 1)( +++++= pour tout n>0. Exercice 19 Calculer par récursivité 12 1 )1(... 7 1 5 1 3 1 1)( + −++−+−= n nS n pour tout n>=0. Exercice 20 Écrire une fonction récursive qui permet de chercher le maximum dans un tableau T de n entiers. Écrire une fonction récursive qui permet de chercher le minimum dans un tableau T de n entiers. Exercice 21 Écrire une fonction récursive qui détermine la valeur la plus proche d'un entier m donné dans un tableau T de n entiers. Exercice 22 Écrire une fonction récursive qui teste l'existence d'un élément donné dans un tableau donné en utilisant une recherche séquentielle. Exercice 23 Écrire une fonction récursive qui teste l'existence d'un élément donné dans un tableau donné en utilisant une recherche dichotomique. Exercice 24 Écrire une procédure récursive qui permet de décaler tous les éléments d’un tableau d’une position à droite à partir de la position p. Exercice 25 Écrire une procédure récursive qui permet d’inverser les éléments d’une partie d’un tableau compris entre la position p et n.
  • 3. Page 3/5 Exercice 26 Écrire une procédure récursive qui permute les n éléments consécutifs deux à deux d’un tableau T. Exercice 27 Écrire une fonction récursive qui détermine la valeur maximale de deux entiers positifs sans utiliser < et >. Exercice 28 Soit une chaîne de caractères ; supposons qu'on veuille faire aussi bien la fonction que la procédure qui nous renvoie l'inverse de cette chaîne. Exercice 29 Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri par sélection. Exercice 30 Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri par insertion. Exercice 31 Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri à bulles. Exercice 32 Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri Shell. Exercice 33 Écrire une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri par fusion. Exercice 34 Ecrire une procédure récursive qui supprime toutes les occurrences d'un caractère donné d'une chaîne de caractère. Exercice 35 Écrire une fonction qui compte le nombre d’occurrences d’un caractère c dans une chaîne ch. Exercice 36 Écrire une fonction récursive qui calcule la somme des chiffres d'un nombre entier. Exercice 37 Écrire une fonction récursive qui détermine le nombre des chiffres d'un entier. Exercice 38 Deux mots sont des anagrammes si l’un est une permutation des lettres de l’autre. Par exemple les mots suivants sont des anagrammes : – aimer et maire – chien et niche Par définition, on considère que deux mots vides sont des anagrammes. Proposez une fonction récursive qui permet de savoir si deux mots sont des anagrammes. Exercice 39 Écrire une fonction récursive qui teste la présence d'un caractère dans une chaîne de caractère. Exercice 40 Écrire une fonction récursive nommée suppr_car qui permet de supprimer la première occurrence d'un caractère d'une chaîne.
  • 4. Page 4/5 Exercice 41 En utilisant les deux fonctions précédentes (teste et suppr_car), proposez une fonction récursive constructible qui permet de savoir si un mot est constructible à partir d'un ensemble de lettres. Le mot et l'ensemble de lettres sont représentés à l'aide d'une chaîne de caractères. Si une lettre apparaît deux fois dans le mot, il faut qu'elle apparaissent au moins deux fois dans l'ensemble de lettres. Par exemple : Constructible ("BONJOUR","BJNORUYZ") retournera faux (le 'O' n'apparaissant qu'une seule fois dans "BJNORUYZ") Constructible ("TRALALA","LLAAAAART") retournera vrai Constructible ("","ABC") retournera vrai Exercice 42 Le triangle de Pascal est le tableau des coefficients qui sont utilisés pour le développement de certaines expressions comme (a+b)² ou (a+b) n . Ce triangle est le suivant : 0 : 1 (a+b) 0 = 1 1 : 1 1 (a+b) 1 = 1a + 1b 2 : 1 2 1 (a+b) 2 = 1a 2 + 2ab + 1b 2 3 : 1 3 3 1 (a+b) 3 = 1a 3 + 3a 2 b + 3ab 2 + 1b 3 4 : 1 4 6 4 1 (a+b) 4 = 1a 4 + 4a 3 b + 6a 2 b 2 + 4ab 3 + 1b 4 Écrire une fonction récursive permettant de déterminer les valeurs du triangle pascal. Exercice 43 Écrire une fonction récursive MacCarthy qui calcule MacCarthy(n) selon la définition suivante : Si n>100 MacCarthy(n) = n-10 Si n≤100 MacCarthy(n) = MacCarthy( MacCarthy(n+11)) Exercice 44 Écrire une fonction récursive calculant la fonction d'Ackermann définie comme suit : n+1 si m = 0 ( , ) Ack (m-1, 1) si m > 0 et n = 0 Ack (m-1, Ack (m, n-1)) si m > 0 et n > 0 Ack m n ⎧ ⎪ = ⎨ ⎪ ⎩ Calculer Ack(0,3) et Ack(2,2) Exercice 45 Évaluation d’une chaîne de caractère Soit une chaîne de caractères du type s="5+123-4+67-2" ; Écrire une fonction récursive qui évalue cette chaîne de caractères. Exercice 46 Vers une mini-calculatrice Soit une chaîne de caractères du type s="5+3*4/2-5*3+4*7/2" ; faisons le programme qui évalue cette chaîne de caractères. Exercice 47 Écrire une procédure récursive qui affiche les combinaisons (les différentes permutations de n objets) d'une chaîne de caractères. Par exemple, les anagrammes des lettres de "abc" sont : "abc", "acb", "bac", "bca", "cab" et "cba".
  • 5. Page 5/5 Exercice 48 Écrire un programme permettant d'évaluer un nombre romain en son équivalant en décimal. Sachant que les chiffres romains : • M = 1000 • D = 500 • C = 100 • L = 50 • X = 10 • V = 5 • I = 1 On constate que les nombres s'arrêtaient aux milliers. Exemples d'écriture des nombres romains : • 4 s'écrit IV. • 6 s'écrit VI. • 9 s'écrit IX. • 15 s'écrit XV. • 47 s'écrit XLVII. • 149 s'écrit CXLIX (et non CIL, comme on pourrait le penser) On constate ici la décomposition 100+40+9 = C + XL + IX • 1490 s'écrit MCDXC = 1000 + 400 + 90 = M + CD + XC Exercice 49 Écrire un programme qui utilise une procédure récursive permettant d’afficher les caractères d’une chaîne sous la forme indiquée dans l’exemple suivant : Exemple : Soit la chaîne "TURBO" TURBO TURB TUR TU T Exercice 50 Écrire une fonction booléenne récursive qui teste si deux fichiers d’entiers sauvegardés sur disque dur, sont égaux ou non. Exercice 51 Écrire un programme qui utilise une fonction récursive pour trouver le plus petit nombre d’un fichier d’entiers sauvegardés sur disque dur, puis l’affiche à l’écran. Exercice 52 On considère la procédure suivante écrite en Pascal : Procedure P(n : integer); begin if (n>0) A) Pour n=5, la sortie de P(n) affiche 5 1 1. B) Pour n=5, la sortie de P(n) affiche 1 5 1. C) Pour n=7, la sortie de P(n) affiche 1 1 5. D) Pour n=9, la sortie de P(n) affiche 2 3 1. E) P(n) se termine pour toutes les valeurs entières de n. then begin P(n div 4); writeln(n); P(n div 3); end; end;