From 7fdc8617f555d885b743b00b767aac1c908e757e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aur=C3=A9lien?= <aurelien.marchal1@etu.univ-lorraine.fr>
Date: Sat, 29 Mar 2025 10:09:09 +0100
Subject: [PATCH] =?UTF-8?q?Exercice=208=20:=20Factorielle=20et=20recursivi?=
 =?UTF-8?q?t=C3=A9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 qualdev/TD-Debug.ts | 36 +++++++++++++++++++++++++++++-------
 1 file changed, 29 insertions(+), 7 deletions(-)

diff --git a/qualdev/TD-Debug.ts b/qualdev/TD-Debug.ts
index 24a429b..a1b45ad 100644
--- a/qualdev/TD-Debug.ts
+++ b/qualdev/TD-Debug.ts
@@ -123,12 +123,34 @@ function multiplicationParAddition(x: number, y: number): number {
   }
   
 
-  let couples = [
-    [0, 0], [5, 3], [3, 5], [-5, -2], [-2, -5],
-    [-74, 2], [-1, 75], [10, -25], [10, -3]
-  ];
+//let couples = [
+//    [0, 0], [5, 3], [3, 5], [-5, -2], [-2, -5],
+//    [-74, 2], [-1, 75], [10, -25], [10, -3]
+//];
   
-  for (let [x, y] of couples) {
-    console.log(`multiplicationParAddition(${x}, ${y}) = ${multiplicationParAddition(x, y)}`);
+//for (let [x, y] of couples) {
+//    console.log(`multiplicationParAddition(${x}, ${y}) = ${multiplicationParAddition(x, y)}`);
+//}
+
+
+//exo 8 : 
+
+
+let n = 5;
+console.log(factorielle(n));
+
+function factorielle(n: number): number {
+  if (n === 0) {
+    return 1;
   }
-  
\ No newline at end of file
+  let valeur = n * factorielle(n - 1);
+  return valeur;
+}
+
+
+function factorielle2(n: number): number {
+    if (n < 0) throw new Error("Valeur non valide pour la factorielle");
+    if (n === 0) return 1;
+    return n * factorielle2(n - 1);
+}
+
-- 
GitLab