diff --git a/TD5 Test/Exercice.test.ts b/TD5 Test/Exercice.test.ts index d582e9178b0161ddbfa63ad6ac77a47bde4e4aac..91720d9fab6712e346c2561d100ebb506cb60e59 100644 --- a/TD5 Test/Exercice.test.ts +++ b/TD5 Test/Exercice.test.ts @@ -1,4 +1,4 @@ -import { multAdd } from "./MesMaths.ts"; +import { multAdd, puissanceMult } from "./MesMaths.ts"; import { assertEquals } from "jsr:@std/assert/equals"; import { assertAlmostEquals } from "jsr:@std/assert/almost-equals"; @@ -6,11 +6,20 @@ Deno.test("cas général", () => { assertEquals(multAdd(3, 8), 24); }); Deno.test("multiplication par 0", () => { - assertEquals(multAdd(3, 0), 0); + assertEquals(multAdd(3, 0), 0); }); Deno.test("multiplication par un nombre négatif", () => { - assertEquals(multAdd(3, -8), -24); + assertEquals(multAdd(3, -8), -24); }); Deno.test("multiplication par 2 nombre négatif", () => { assertEquals(multAdd(-8, -8), 64); - }); +}); +Deno.test("Puissance par un nombre négatif", () => { + assertEquals(puissanceMult(-5, 9), -1953125); +}); +Deno.test("Puissance par un nombre négatif", () => { + assertEquals(puissanceMult(5, -9), -1953125); +}); + + + diff --git a/TD5 Test/MesMaths.ts b/TD5 Test/MesMaths.ts index fccd14857920e2f2671a307f9e13b1033468d34b..495da5030e1cc6586e049ccfa3ac35e81ff7f84c 100644 --- a/TD5 Test/MesMaths.ts +++ b/TD5 Test/MesMaths.ts @@ -13,3 +13,20 @@ export function multAdd(x: number, y: number): number { else return resultat; } + export function puissanceMult(x: number, y: number): number { + let val = 1; + let inf = 0; + if (y < 0){ + y = -y + inf = 1 ; + } + for (let i = 0; i < y; i++) { + val *= x; + } + if (inf === 1 ) return -val ; + else return val; + + } + +// 1) on doit tester pour y negatif car il renvoit 1 +