Je sais que c'est assez basique, mais j'aimerais faire un programme qui me fasse la difference entre deux vecteurs, qui n'ont pas forcément la même taille.*
Par exemple,
difference [|1;2;3|] [|1;4;5;6;2;4|] devra renvoyer [|0;-2;-2;-6;2;-4|]
Bref, j'ai fait quelque chose qui marche bien, sauf quand les deux tableaux ont la même taille. Dans ce cas, en faisant difference a b j'obtiens parfois b-a au lieu de a-b.
Comment régler ceci?
let difference p q =
let (max, min) = (max p q, min p q) in
for i = 0 to vect_length min - 1 do
max.(i) <- max.(i) - min.(i);
done;
if p > q then max else map_vect (fun x -> - x) max;;
merci.