• Aucun résultat trouvé

8.1 Gérer un tableau

N/A
N/A
Protected

Academic year: 2022

Partager "8.1 Gérer un tableau"

Copied!
2
0
0

Texte intégral

(1)

Auteur : Mohamed Messabihi

Matière : Introduction à l'algorithmique k [email protected]

+ https://sites.google.com/site/informatiquemessabihi/

Université Abou Bakr Belkaïd - Tlemcen Faculté des sciences 1ère L.M.D. MI 2014-2015

8 TP : Les Tableaux

8.1 Gérer un tableau

1. Écrire une fonction lire_Tab qui prend en entrée trois paramètres ; un tableau tab d'entiers, un entier qui stockera la dimension du tableau et un entier NMAX. La fonction lit la dimension N et les éléments du tableau tab. La dimension N doit être inférieure à NMAX.

Exemple :

Pour un appel par lire_Tab(T, &N, 10) ; la fonction se comportera comme suit :

Donnez la dimension du tableau (max = 10): 11 La dimension du tableau doit être inférieur à 10.

Donnez la dimension du tableau (max = 10): 4 Elément[0] : 43

Elément[1] : 55 Elément[2] : 67 Elément[3] : 79

2. Ecrire la fonction ecrire_Tab(T, N) à deux paramètres TAB et N qui ache les N élements du tableau T d'entiers.

Exemple :

Le tableau T lu dans l'exemple ci-dessus sera aché par l'appel : ecrire_Tab(T, N) ; et sera présenté comme suit :

43 55 67 79

3. Écrire la fonction somme_Tab qui calcule la somme des N éléments d'un tableau T d'en- tiers. N et T sont fournis comme paramètres ; la somme est retournée comme résultat.

4. A l'aide des fonctions ci-dessus, écrire un programme qui lit un tableau A d'une dimension inférieure ou égale à 100 et ache le tableau et la somme des éléments du tableau.

8.2 Autour du maximum

On souhaite déterminer le maximum de N éléments d'un tableau tab d'entiers de trois façons diérentes.

Écrire les fonctions suivante :

1. la fonction valeur_Max qui retourne la valeur maximale

2. la fonction idice_Max qui retourne l'indice de l'élément maximal 3. la fonction adresse_Max qui retourne l'adresse de l'élément maximal Écrire un programme pour tester les trois fonctions.

B [email protected] Page 1

(2)

8.3 Gérer un tableau deux dimensions

1. Écrire la fonction LIRE_DIM à quatre paramètres L, LMAX, C, CMAX qui lit les dimensions L et C d'une matrice à deux dimensions. Les dimensions L et C doivent être inférieures à LMAX respectivement CMAX.

2. Écrire la fonction LIRE_MATRICE à quatre paramètres MAT, L, C, et CMAX qui lit les composantes d'une matrice MAT du type int et de dimensions L et C.

3. Implémenter les fonctions en choisissant bien le type des paramètres et utiliser un dialogue semblable à celui de LIRE_TAB.

4. Écrire la fonction ECRIRE_MATRICE à quatre paramètres MAT, L, C et CMAX qui ache les composantes de la matrice de dimensions L et C.

5. Écrire la fonction SOMME_MATRICE du type long qui calcule la somme des éléments d'une matrice MAT du type int. Choisir les paramètres nécessaires.

6. Écrire un petit programme qui teste la fonction SOMME_MATRICE.

8.4 Les matrices

1. Écrire une fonction ADDITION_MATRICE qui eectue l'addition de deux matrices.

2. Écrire une fonction MULTI_MATRICE qui eectue la multiplication d'une matrice par un entier x.

3. Écrire une fonction TRANSPO_MATRICE à cinq paramètres MAT, L, LMAX, C, CMAX qui eectue la transposition de la matrice MAT en utilisant la fonction PERMUTER.

TRANSPO_MATRICE retourne une valeur logique qui indique si les dimensions de la matrice sont telles que la transposition a pu être eectuée

4. Écrire une fonction MULTI_2_MATRICES qui eectue la multiplication de deux matrices MAT1 (dimensions N et M) et MAT2 (dimensions M et P) en une troisième matrice MAT3 (dimensions N et P) :

5. Écrire un programme qui permet de tester toutes les fonctions ci-dessus.

8.5 Recherche de Points-cols

Écrire un programme permettant de rechercher dans une matrice donnée A les éléments qui sont à la fois un maximum sur leur ligne et un minimum sur leur colonne. Ces éléments sont appelés des points-cols. Acher les positions et les valeurs de tous les points-cols trouvés.

Exemples : 3 est un point-cols :

3 2 1 6 5 4 9 8 1

Méthode : Établir deux matrices d'aide MAX et MIN de même dimensions que A, telles que :

M AXij =

1 siAij est un maximum sur la ligne i 0 sinon

M INij =

1 si Aij est un minimum pour la colonnej 0 sinon

B [email protected] Page 2

Références

Documents relatifs

Le carré du produit de deux nombres est égal au produit des carrés de ces deux

Le carré du produit de deux nombres est égal au produit des carrés de ces deux

GROUPE DE DEUXIÈME ESPÈCE DONT LES TRANSFORMATIONS NE SONT PAS TOUTES DEUX A DEUX

Qu’elles soient individuelles ou collectives, on sait aujourd’hui qu’il est important pour la santé notamment de pratiquer une ou plusieurs activités

[r]

Tu pratiques un sport : après l’avoir présenté, tu donneras les raisons pour lesquelles tu as choisi de faire du sport et pourquoi celui-ci plutôt qu’un autre. • Ville

[r]

Des alpinistes, des navigateurs, des coureurs automobiles… risquent souvent leur vie pour remporter une victoire?. Seriez-vous prêt à risquer la vôtre pour réaliser