diff --git a/qualdev/compte_rendu_debug.txt b/qualdev/compte_rendu_debug.txt
index 55b504ab519b8d3e29abd02cf30c557a357730a2..42094d46544597328078dca4499fba65221d849f 100644
--- a/qualdev/compte_rendu_debug.txt
+++ b/qualdev/compte_rendu_debug.txt
@@ -17,3 +17,7 @@ j ne marche que dans la fonction.
 
 6) Les indices 1 des deux tableaux ont changé.
 Seul le premier tableau à changer.
+
+7) Le programme renvoie le produit de x et y.
+On regarde la valeur la plus grande et la valeur la plus petite et on met la valeur la plus petite dans la boucle for.
+Le programme ne fonctionne pas avec les chiffres négatifs. 
diff --git a/qualdev/qualdev/debug1.ts b/qualdev/qualdev/debug1.ts
index 5c22fc17ae1a8fa58c3027ca368e9f385a4e9f5c..af35e59db7e57dbba34dfd82a2c6a6acbe1a69b5 100644
--- a/qualdev/qualdev/debug1.ts
+++ b/qualdev/qualdev/debug1.ts
@@ -38,5 +38,41 @@ let tab1= [1,2,3];
 let tab2 = [...tab1];
 
 tab1[1] = 5;
-console.log(tab1,tab2);
+
+produit(3,5);
+
+function produit(x:number,y:number):number{
+    let val = 0;
+    let valMin = Math.abs(x);
+    let valMax = Math.abs(y);
+    let negatif : boolean;
+
+    if (valMin > valMax){
+        let tmp = valMin;
+        valMin = valMax;
+        valMax = tmp;
+    }
+    
+    negatif = (x < 0) !== (y < 0);
+
+    for (let i = 0; i < valMin; i++){
+        val += valMax;
+    }
+    if (negatif){
+        return -val;
+    }
+    return val;
+}
+
+console.log(produit(0,0));
+console.log(produit(5,3));
+console.log(produit(3,5));
+console.log(produit(-5,-2));
+console.log(produit(-2,-5));
+console.log(produit(-74,2));
+console.log(produit(-1,75));
+console.log(produit(10,-25));
+console.log(produit(10,3));
+
+