Langage C - Travaux Dirigés n° 4

IUP Mathématiques-Informatique


Exercice n° 1 (Recherche du maximum)

Écrire une fonction maxtab qui recherche la valeur maximale contenue dans un tableau de flottants (float). La fonction prendra en paramètre le tableau et sa taille. Elle retourna la valeur maximale. Inclure cette fonction dans un programme qui remplit un tableau avec des valeurs pseudo-aléatoires et qui l'utilise.

Exercice n° 2 (Recherche d'un élément)

Écrire une fonction search qui recherche une valeur particulière dans un tableau de flottants (float). La fonction prendra en paramètre le tableau, sa taille et la valeur à rechercher. Elle retourna une valeur entière qui sera une position de la valeur dans le tableau si elle est présente dans le tableau et -1 sinon. Inclure cette fonction dans un programme qui saisit les valeurs du tableau et la valeur à rechercher.

Exercice n° 3 (Recopie de tableaux)

Écrire une fonction copytab qui recopie un tableau dans un autre. Cette fonction prend en paramètre les deux tableaux et le nombre d'éléments à copier.

Exercice n° 4 (Fonction map)

Écrire une fonction map qui applique une fonction sur un tableau d'entiers. La fonction map prend en paramètre une fonction f, un tableau d'entiers ainsi que la taille du tableau. La fonction f prend un entier en paramètre et retourne un entier. Si le tableau contient les valeurs x0, x1, x2,..., xn, le tableau contient après l'appel les valeurs f(x0), f(x1), f(x2),..., f(xn).

Exercice n° 5 (Fonction itarray)

Écrire une fonction itarray qui calcule l'itération d'une fonction à deux arguments sur un tableau d'entiers. La fonction itarray prend en paramètre une fonction f, un tableau d'entiers ainsi que la taille du tableau. La fonction f prend deux entiers en paramètre et retourne un entier. Si le tableau contient les valeurs x0,x1,x2,...,xn, la fonction itarray retourne la valeur

f(f(... f(f(x0,x1),x2),...)xn).

Si la taille du tableau est respectivement 1, 2, 3 ou 4 la fonction itarray retourne repsectivement les valeurs x0, f(x0, x1), f(f(x0, x1), x2) et f(f(f(x0, x1), x2), x3). Comment utiliser cette fonction itarray pour calculer, le maximum, la somme ou le produit des éléments d'un tableau ?

Exercice n° 5 (Inversion d'un tableau)

Écrire une fonction inverse qui inverse l'ordre des éléments dans un tableau de flottants. Cette fonction prendra en paramètre le tableau et sa taille. Après l'appel à la fonction inverse, le tableau contient les mêmes valeurs mais placées dans l'ordre inverse. Ainsi si le tableau contient les valeurs [2.1, 3.4, 5.6, 7.8, 9.1, 7.4], il devra ensuite contenir les valeurs [7.4, 9.1, 7.8, 5.6, 3.4, 2.1].

Exercice n° 6 (Insertion dans un tableau)

Écrire une fonction insere qui insère une nouvelle valeur dans un tableau trié de flottants. Cette fonction prendra en paramètre le tableau, le nombre d'éléments déjà présents dans le tableau et la nouvelle valeur. Elle suppose que le tableau de taille assez grande et que les valeurs sont triées dans le tableau. Utiliser cette fonction avec un programme qui insère au fur et à mesure des valeurs saisies par l'utilisateur puis qui les affiche dans l'ordre.