diff --git a/compte-rendu.txt b/compte-rendu.txt
index e942c88cf6953ac6079b601cdbfdd57ea0cfdcbd..8c28cf198c10164485753b882fe18e56a5a1b9f9 100644
--- a/compte-rendu.txt
+++ b/compte-rendu.txt
@@ -31,4 +31,31 @@ Exercice 5 :
 Exercice 6 :
 
     1.tab1 et tab2 pointent vers le même tableau. Quand on modifie tab1, tab2 est aussi modifié car c'est une référence, pas une copie.
-    2. tab2 est une copie indépendante de tab1 grâce à [...tab1]. Quand on modifie tab1, tab2 ne change pas : - tab1 = [1,1,3] (modifié)
+    2.tab2 est une copie indépendante de tab1 grâce à [...tab1]. Quand on modifie tab1, tab2 ne change pas : - tab1 = [1,1,3] (modifié)
+
+Exercice 7 :
+
+    1.La fonction ajoute mal x à val à cause du bug =+ (devrait être +=) + Après 3 itérations avec x=5 : retourne 5 au lieu de 15
+    
+    2.Correction : 
+
+        function multiplication(x: number, y: number): number {
+            let val = 0;
+            for (let i = 0; i < y; i++) {
+                val += x;  // Correction ici
+            }
+            val;
+        }
+
+    3. La fonction calcule mal x*y à cause du bug =+. Avec deb7(3,5), elle retourne 3 au lieu de 15. Après correction (+=), elle fonctionne et devrait s’appeler multiplication car elle additionne x y fois."
+        
+    4. Remplacer la boucle par return x * y est bien plus efficace.
+
+    5. La boucle ne s'exécute pas (négatif), qui renvoie 0 (faux). 
+       Correction : Utiliser return x * y
+
+    6. function multiplication(x: number, y: number): number {
+    return x * y; // Solution optimale
+}
+
+    6. Programme : voir ex7.ts
\ No newline at end of file
diff --git a/ex7.ts b/ex7.ts
new file mode 100644
index 0000000000000000000000000000000000000000..8707b24d26ed3f1f18aef1e03da7685fd504e216
--- /dev/null
+++ b/ex7.ts
@@ -0,0 +1,10 @@
+deb7(5, 3);
+
+function deb7(x:number, y:number):number{
+    let val=0;
+    
+    for (let i = 0; i< y; i++) {
+        val =+ x;
+    }
+    return val;
+}
\ No newline at end of file