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