Transposée d'une matrice
Exercice · OCaml (option informatique), chapitre 5 — Les tableaux
Énoncé
Écrire transpose m qui renvoie la transposée d'une matrice d'entiers lignescolonnes (rectangulaire, non vide).
Corrigé
let transpose m =
let lignes = Array.length m in
let colonnes = Array.length m.(0) in
let t = Array.make_matrix colonnes lignes 0 in
for i = 0 to lignes - 1 do
for j = 0 to colonnes - 1 do
t.(j).(i) <- m.(i).(j)
done
done;
t
La transposée a colonnes lignes et lignes colonnes : on crée t de la bonne forme, puis on recopie m.(i).(j) dans t.(j).(i). Le nombre de colonnes se lit sur la première ligne m.(0) (d'où l'hypothèse « rectangulaire non vide »).
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.