DEUG MIAS 24

 

Types et Structures de données

 

TME 6

 

1.Utilisation de tableaux

 1.1.

Déclarer un tableau vide nommé t0.

 

 1.2.

Déclarer un tableau t de 5 éléments tous initialisés à l'entier 2.

 

 1.3.

Définir une fonction ajoute_indice : int array -> unit telle que (ajoute_indice v) remplace tous les éléments du tableau v par la somme de leur valeur initiale et de leur indice dans le tableau.

 

 1.4.

Testez et vérifiez le résultat de l'application de la fonction ajoute_indice sur les tableaux t et t0.

 

 1.5.

Définir une fonction plus_indice : int array -> int array telle que (plus_indice v) retourne un tableau de même dimension que le tableau v, dont les élément d'indice i ont pour valeur la somme de l'élément d'indice i du tableau v et de l'indice i, sans modifier le tableau v.

 

 1.6.

Testez et vérifiez le résultat de l'application de la fonction plus_indice sur les tableaux t et t0.

 

2.Tableaux à 2 dimensions

 2.1.

Exécuter les deux déclarations globales suivantes :

let m1 = Array.make_matrix 2 5 0 ;;

let m2 = Array.make 2 m1.(1) ;;

On doit obtenir :

val m1 : int array array = [|[|0; 0; 0; 0; 0|]; [|0; 0; 0; 0; 0|]|]

val m2 : int array array = [|[|0; 0; 0; 0; 0|]; [|0; 0; 0; 0; 0|]|]

 

 2.2.

Appliquer ajoute_indice à m1.(1).

Quels sont les éléments de m1, de m2 ?

 

 2.3.

Exécutez l'expression : m2.(1) <- m1.(0) ;;

Quels sont les éléments de m1, de m2 ?

 

 2.4.

Appliquer ajoute_indice à m1.(0).

Quels sont les éléments de m1, de m2 ?

 

 3.

Programmer des exercices des TD 5 et 6.