Université Mohammed Premier
Pr: DAHMANI Soufiane
Faculté des Sciences OUJDA
Email: [Link]@[Link]
Département d’Informatique
Filière: MIP-S2
Informatique 2: Algorithmique 2 / Python
TD 1 : Fonctions et Procédures
1 Exercice 1 :
1.) Trouver le résultat fourni par l’algorithme :
Procédure Som Car( →X1 : numérique, → X2 : numérique,↔S : numérique)
Début
X1 ← X1 * X1
X2 ← X2 * X2
S ← X1 + X2
Fin
//Programme principal :
Variables X, Y, Z : numériques
Debut
X←3
Y←4
Z←0
SomCar(X, Y, Z)
Ecrire(X, ”ˆ2 + ”, Y, ”ˆ2 = ”, Z)
Fin du programme principal
2.) Remplacer dans ce programme la procédure par une fonction.
2 Exercice 2 :
Une procédure est déclarée par :
Procédure Test (→A : numérique,↔ B : numérique, ↔ C : numérique)
Début
A←A+1
B ← 22
C←C+3
Fin
Parmi les appels suivants certains ne sont pas corrects, expliquer pourquoi. Pour les autres,
trouver les valeurs des paramètres A, B, C au début et à la fin de son exécution, des variables X,
Y et Z ensuite. Avant chacun des appels, on effectue :
X ← 3 , Y ← 7 , Z ← 11
1.) Test (1 , 2, 3)
2.) Test (X, Y, Z)
3.) Test (Z, Y, X)
4.) Test (1+X*10, Y, Z)
5.) Test (X, X, Z)
6.) Test (X, Y, Y)
1
3 Exercice 3 :Calcul de la factorielle
1.) Écrire une fonction qui calcule la factorielle d’un nombre donné en entrée.
2.) Intégrer la fonction définie précédemment dans un programme (procédure) calculant la somme
des factoriels des 100 premiers nombres entiers positif.
3.) Ajouter un programme principal qui fait appel à cette fonction/procédure et qui affiche le
résultat de la somme des factoriels obtenue.
4 Exercice 4 :Validation de mot de passe
1.) Écrire une fonction qui prend en entrée un mot de passe et qui retourne vrai si le mot de passe
est valide (par exemple, contenant au moins une lettre majuscule, une lettre minuscule et un
chiffre), sinon retourne faux.
2.) Ajouter un programme principal qui fait appel à cette fonction
5 Exercice 5 :Vérification de Palindromes
Écrire une fonction qui prend en entrée une chaı̂ne de caractères et qui vérifie si cette chaı̂ne est un
palindrome ou non. Un palindrome est une séquence de caractères qui se lit de la même manière
de gauche à droite et de droite à gauche.
Exemple :
• ”radar”: est un palindrome car il se lit de la même manière de gauche à droite et de droite à
gauche.
• ”hello”: n’est pas un palindrome car il ne se lit pas de la même manière de gauche à droite
et de droite à gauche.
6 Exercice 6 : Tableau
1.) Créer une procédure qui permet d’inverser un tableau à une seule dimension.
2.) Définir les procédures de remplissage et d’affichage
3.) Tester les procédures dans un programme principal
7 Exercice 7 :
1.) Écrire une fonction qui permet de vérifier si un caractère est en minuscule ou non (retourne 1
si oui et 0 sinon).
2.) Ajouter un programme principal qui fait appel à cette fonction
8 Exercice 8 :
Soit A un tableau d’entiers. En utilisant des procédures/fonctions, écrire l’algorithme qui permet
de :
a) Trouver le maximum de A.
b) Trouver le minimum de A.
c) Calculer la somme des éléments de A.
d) Calculer le produit des éléments de A.
e) Calculer la moyenne des éléments de A.
9 Exercice 9 :
En utilisant des procédures/fonctions, écrire un algorithme qui permute le nombre réel maximum
avec le nombre réel minimum d’un vecteur contenant n (n>0) nombres réels.