:: Enseignements :: Licence :: L2 :: 2008-2009 :: Structures de données ::
![[LOGO]](http://igm.univ-mlv.fr/ens/resources/mlv.png) | Rappels sur l'allocation dynamique |
Matrice et typage de la mémoire
On désire représenter par un pointeur une matrice d'éléments de type
double
(tableau à deux dimensions). Le faire par une allocation statique est plutôt simple:
double tab[MAXLIG][MAXCOL];
Pour allouer dynamiquement un tel tableau, il est possible de s'aider de la figure
ci-dessous qui présente la manière dont les informations devront être stockées.
Donner la définition d'un type Matrice permettant de représenter des matrices à
deux dimensions d'éléments de type double, dont la taille de chaque dimension n'est pas
connue statiquement. Les informations nécessaires sont donc un pointeur et la taille de chaque dimension.
Écrire les fonctions suivantes:
- Matrice* alloueMatrice(int maxLig, int maxCol)
- double elementMatrice(Matrice* m, int i, int j)
- void afficheMatrice(Matrice* m)
- void libereMatrice(Matrice* m)
Écrire un
main de test qui demande à l'utilisateur de saisir
les dimensions de la matrice, qui l'alloue et l'initialise avec des valeurs croissantes
de 1 à chaque fois:
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15
16 17 18 19
© Université de Marne-la-Vallée