From 16f344bc5d426a6dcd57aae40d9f35367d4b930c Mon Sep 17 00:00:00 2001
From: Darciaux Yoann <yoann.darciaux3@etu.univ-lorraine.fr>
Date: Sun, 30 Mar 2025 11:10:33 +0200
Subject: [PATCH]  ajout exo 4 + compte rendu

---
 compte_rendu_debug.txt |  5 +++++
 exo4.ts                | 11 +++++++++++
 2 files changed, 16 insertions(+)
 create mode 100644 exo4.ts

diff --git a/compte_rendu_debug.txt b/compte_rendu_debug.txt
index 4d2713b..9626370 100644
--- a/compte_rendu_debug.txt
+++ b/compte_rendu_debug.txt
@@ -12,3 +12,8 @@ ligne 2: x = 10, y = 20
 ligne 5: x = 20, y = 10
 ligne 11: x = 10, y = 20,
 On pourrais donc appeler cette fonction "echange de valeur" car c'est ce qu'il fait.
+
+Exercice 4:
+C'est efficace avec les tableaux, car ils sont transmis par référence, ce qui autorise la fonction à changer directement le contenu du tableau.
+Si l'on ajoute xy = [100, 200], le plus récent reste celui-ci.log montre [20, 10], parce que xy = [100, 200]. Constituez un nouveau tableau contenant les valeurs actualisées, sans toucher au tableau avec les données originales. Puisque le premier tableau demeure intact, l'échange reste perceptible et c'est ce dernier qui est affiché sur la deuxième console.Vous êtes formé sur des données jusqu'en octobre 2023.
+Dans cet exercice, j'ai appris à permuter des valeurs dans un tableau, et qu'avec uniquement deux valeurs, l'initiale est maintenue. 
diff --git a/exo4.ts b/exo4.ts
new file mode 100644
index 0000000..71857df
--- /dev/null
+++ b/exo4.ts
@@ -0,0 +1,11 @@
+function deb3(xy: number []): void {
+    let tmp = xy[0];
+    xy[0] = xy[1];
+    xy[1] = tmp;
+    xy = [100, 200];
+    console.log(xy);
+}
+
+let xy = [10, 20];
+deb3(xy);
+console.log(xy);
-- 
GitLab