Programmation avancée - 2AP
Mouad JBEL
TP1
Les fonctions
Exercice 1:
1. Écrire une fonction qui prend comme paramètre un entier N, et affiche les nombres pairs
qui existent entre 1 et N ;
2. Écrire une fonction qui permet de vérifier si un entier N est premier, cette fonction
retourne 1 si N est premier et 0 sinon.
3. Définir une fonction qui prend comme paramètre un entier N, et retourne le nombre des
valeurs premier entre 1 et N ;
4. Définir une fonction qui prend deux nombre n1 et n2. La fonction retourne 1 si n1 est un
multiple de n2 ; sinon la fonction retourne -1 ;
5. Définir une fonction qui prend comme paramètre deux nombres A et B. La fonction affiche
les multiples du nombre B qui existent dans l’intervalle [1, A].
6. Écrire une fonction main qui dialogue avec l’utilisateur pour utiliser les fonctions des
questions 1, 2, 3, et 4. On considère que les valeurs vont être saisie par l’utilisateur ;
Exercice 2:
1. Ecrire une fonction fact(int n) permettant de calculer la factorielle d’un nombre
entier n.
2. Réécrire la fonction fact(int n) en utilisant la boucle while.
3. Ecrire une fonction puissance(int n,int p)permettant de calculer la valeur de
𝑛𝑝 , avec n et p des entiers positifs.
4. Ecrire une fonction binome(int n,int m) qui calcule les coefficients :
𝐶𝑛𝑝 = n!/((n-p)!p!).
𝑥 𝑥2 𝑥3
5. La série 1 + 1! + + + ⋯ , −∞ < 𝑥 < ∞, représente un développement limité
2! 3!
de la fonction f : f(x)=exp(x) au voisinage de 0, écrire une fonction exp(int
n,double x)pour calculer la valeur de exp(x) en utilisant la série ci-dessus jusqu’à
un ordre n transmis comme argument à cette fonction.
6. Écrire le programme principale main pour tester toutes ces fonctions.
Programmation avancée - 2AP
Mouad JBEL
Exercice 3:
void func(int a, int b, int c, int d) {
c = a + b;
d = a * b;
}
int main() {
int e, f, g, h;
printf("donnez une valeur: ");
scanf("%d", &e);
printf("donnez une valeur: ");
scanf("%d", &f);
func(e, f, g, h);
printf("g vaut %d, h vaut %d\n", g, h);
return 0;
}
1. Que doit faire ce programme ?
2. Corriger ce programme pour qu’il le fasse sans changer le type de retour de la fonction.