diff --git a/Algo/Séminaire/Exercices sémaines.md b/Algo/Séminaire/Exercices sémaines.md index 66f8cd9..f953d6a 100644 --- a/Algo/Séminaire/Exercices sémaines.md +++ b/Algo/Séminaire/Exercices sémaines.md @@ -135,19 +135,28 @@ val max2 : 'a -> 'a -> 'a = # let min2 number1 number2 = if number1 > number2 then number2 else number1 val min2 : 'a -> 'a -> 'a = -let max3 number1 number2 number3 = - if number1 > number2 && number1> number3 then number1 - else if number2 > number3 && number2>number1 then number2 - else number3 -val max3 : 'a -> 'a -> 'a -> 'a -> 'a = +let max3 x y z = + let high = if x > y then x else y in + if high > z then + high + else z;; +val max3 : 'a -> 'a -> 'a -> 'a = -let min3 number1 number2 number3 = if number1 < number2 && number1< number2 then number1 else if number2 < number3 && number2 'a -> 'a -> 'a = -let middle3 number1 number2 number3 = let min = min3(number1 number2 number2) and max = max3(number1 number2 number2) in if min = number1 && max = number3 then number2 else if min = number2 && max = number1 then number3 else number2 +# let middle3 x y z = + x + y + z - min3 x y z - max x y z ;; +val middle3 = int -> int -> int = -let max4 number1 number2 number3 number4 = let nb1 = max2(number1 number2) and nb2 = max2(number3 number4) in if nb1>nb2 then nb1 else nb2 +let max4 number1 number2 number3 number4 = + let nb1 = max2(number1 number2) and nb2 = max2(number3 number4) in max2(nb1 nb2) -let min4 number1 number2 number3 number4 = let nb1 = min2(number1 number2) and nb2 = min2(number3 number4) in if nb1