Exercice 52
Écrire une fonction qui permet de calculer le prix TTC , cette fonction va recevoir un paramètre de type Réel dont le nom est "prixHT" et un second paramètre de type Réel dont le nom est "tva".
Réponse
fonction calculPrixTTC( prixHT, tva: réel): réel
Variables prixTTC : réel
Début
prixTTC ← prixHT * (1 + tva / 100)
retourner prixTTC
Fin
Exercice 53
Écrire une procédure qui permet d'afficher si un nombre entier passé en paramètre est pair ou impair.
Réponse
procédure parite (nb:entier)
Début
if(nb mod 2 = 0) alors
Ecrire (nb,"est impair")
Sinon
Ecrire (nb," est pair")
Fin
Exercice 54
Écrire une fonction qui permet de retourner le nombre de caractères d’une chaîne de caractères passée en paramètre.
Réponse
Fonction longueurChaine (chaine[]: tableau de caractères) : entier
Variables longueur : entier
longueur ← 0
tant que (chaine [longueur] ≠ '\0') faire
longueur ← longueur. + 1
FinTantque
retourner longueur
Fin
Exercice 55
Écrire une fonction qui cherche combien de fois un caractère est présent dans une chaîne de caractères. Le caractère à chercher et la chaîne seront passés en paramètres.
Réponse
Fonction nombreOccurence(texte[] : tableau de caractères , c : caractère) : entier
Début
Variables nbCar, i : entiers
nbCar ← 0 i ←0
Tantque (texte[i] ≠ '\0') faire
Si (texte[i] = c)
nbCar ←nbCar + 1
. i ←i + 1
FinSi
FinTantque
retourner. nbCar
Fin
Exercice 56
Ecrire une fonction ou procédure qui calcule la valeur absolue d’un nombre.
Réponse
Fonction absolue (x : réel) : réel
Debut
Si ( x > 0 ) alors
retourner x
Sinon
retourner - x
Fin
Exercice 57
Ecrire une procédure qui affiche le tableau de multiplication d’un entier positif x.
Réponse
Procedure Multipl (x: entier)
Variables
i : entier
Debut
Pour i de 1 à 10 faire
Ecrire (x, ‘X’, i, ‘= ‘, x*i)
FinPour
Fin
Exercice 58
Ecrire une fonction qui calcule le PGCD de deux entiers strictement positifs.
Réponse
Fonction PGCD (a , b : entier) : entier
Début
Tantque (a * b ≠ 0) Faire
Si ( a > b ) Alors
a ← a - b
Sinon
b← b - a
FinSi
FinTantque
Si (a = 0) alors
retourner b
Sinon
retourner a
FinSi
Fin
Exercice 59
Ecrire une procédure qui permet de lire deux nombres, calculer la somme et le produit et affiche
si ces derniers sont positifs ou négatifs.
Réponse
Procedure calcul (a,b: réel)
variables
som, prod : réels
Debut
Lire (a, b)
som ← a + b
prod ← a * b
Si (som ≥ 0) Alors
Ecrire ("la somme est positive")
Sinon
Ecrire ("la somme est négative")
FinSi
Si (prod ≥ 0 ) Alors
Ecrire ("le produit est positif ")
Sinon
Ecrire (" le produit est négatif ")
FinSi
Fin
Exercice 60
Ecrire une procédure qui permet de lire une liste de nombres entiers (N nombres) dont la dernière valeur = -1
et affiche le nombre d’entiers pairs et leur pourcentage par rapport au nombre d’entiers donnés.
Réponse
Procedure Nombres
Variables
x, N, N_pairs: entiers
pourcent : reel
Debut
N ← 0
N_pairs ← 0
Repeter
Lire (x)
N ← N + 1
Si (x mod 2 = 0 ) alors
N_pairs ← N_pairs + 1
FinSi
Jusqu’à (x = -1)
pourcent ← N_pairs * 100 / N
Ecrire ("Nombre de valeurs paires = ", N_pairs, "et leur pourcentage = ", pourcent)
Fin
Exercice 61
Ecrire une procédure qui permet d’entrer deux valeurs M et N et d’afficher toutes les valeurs paires entre M et N si M < N.
Réponse
Procedure paires (M,N: entiers)
Variables
Debut
Si (M >= N) Alors
Ecrire ("Erreur !!!!")
Sinon
Tantque (M < N) Faire
Si (M mod 2 = 0 ) Alors
Ecrire (M)
FinSi
M ← M + 1
FinTantque
FinSi
Fin
Exercice 62
Ecrire une procédure qui affiche si un nombre est premier ou non.
Réponse
Procedure premier (a : entier)
Variables
test : booleen
d : entier
Debut
test ← vrai
d ← 2
Tantque ( d ≤ a/2 et test = vrai ) Faire
Si (a mod d = 0) Alors
test ← Faux
Sinon
d ← d + 1
FinSi
FinTantque
Si ( test = vrai) Alors
Ecrire (a, "est premier")
Sinon
Ecrire (a, "n'est pas premier")
FinSi
Fin
Exercice 63
Écrire une fonction récursive qui permet de calculer le factorielle d'un entier saisi par l'utilisateur.
Fonction factorielle (n: entier): entier
Début
Si (n=0 ou n= 1) alors
retourner 1
Sinon retourner factorielle (n-1)*n
FinSi
Fin
Exercice 64
Écrire une fonction récursive qui permet de calculer la somme 1+2+3+...+ N. où N saisi par l'utilisateur.
Fonction somme ( n: entier): entier
Début
Si (n=0) alors
retourner 0
Sinon
retourner somme (n-1)+n
FinSi
Fin
Exercice 65
Écrire une fonction récursive permettant, à partir d'un réel x et d'une valeur entière positive n, de calculer x puissance n .
Fonction puissance (r: réel, n: entier): réel
Début
Si (n=0) alors retourner 1
Sinon retourner puissance (r,n-1)*r
FinSi
Fin
Exercice 66
Écrire une fonction récursive qui permet d'afficher les entiers de 0 à 10 .utilisant un seul paramètre.
Procédure compteur (i: entier)
Début
Ecrire (10-i,"\n")
Si (i>0) alors
i← i+1 compteur (i)
FinSi
Fin
Exercice 67
Écrire une fonction récursive qui permet d'afficher les entiers de A à B . Où A et B sont des paramètres de cette fonction.'
Procédure compteur (i: entier, n: entier)
Début
Ecrire (i,"\n")
Si (i<n) alors
i← i+1
compteur (i,n)
FinSi
Fin
Exercice 68
Écrire une fonction récursive qui permet de calculer le PGCD de deux entiers passés en paramètres,( utiliser l'algorithme d'Euclide).
Fonction Euclide(a: entier,b:entier): entier
Début
Si( b = 0) alors
retourner a
FinSi
retourner Euclide (b, a mod b)
Fin
Exercice 69
Écrire une fonction récursive qui permet d'afficher les éléments d'une matrice passée en paramètre
Procédure affiche(tab[3][4]: tableau d'entiers, a: entier, b: entier)
Début
Si( a < 3 ) alors
Si(b < 4) alors
Ecrire (tab[a][b])
affiche(tab,a,b+1)
Sinon
printf("\n")
affiche(tab,a+1,0)
FinSi
FinSi
Fin
Exercice 70
Écrire une fonction récursive qui permet de calculer l'image d'un entier (passé en paramètre) par une suite de Fibonacci. Suite de Fibonacci est une suite d'entiers dans laquelle chaque terme est la somme des deux termes qui le précèdent. F(0)=F(1)=1
Fonction Fibonacci (n: entier): entier
Début
Si(n =0 ou n =1) alors
Retourner 1
Sinon
Retourner Fibonacci(n-2)+ Fibonacci(n-1)
FinSi
Fin
0 Commentaires