Voici une proposition de squelette des 5 « one liners » à rendre avant vendredi 28 février 08 h 02... On pourra utiliser les fonctions suivantes:
Haskell
-- Calcule la liste des différences 2 à 2 d'une liste de nbs [1,3,6] -> [2,3] reduitL :: Num a => [a] -> [a] reduitL liste = zipWith ???? -- Renvoie la liste des listes de différences : le triangle de Newton reduit :: (Eq a, Num a) => [a] -> [[a]] reduit liste = takeWhile ???? -- Renvoie la tête du triangle de Newton diffNewton :: Num a => [a] -> [a] diffNewton liste = map ???? -- Renvoie la liste des évaluations des (x-x0)(x-x0-1).../n! du théorème 2.6 accumulées dans une liste baseNewton :: (Enum a, Fractional a) => a -> a -> a -> [a] baseNewton x0 x n = scanl (\ acc k -> ???? ) 1 [1 .. n] -- renvoie l'évaluation du poly de Newton en x en partant de x0 avec une liste de valeurs -- l'incrément des abscisses est 1 interpol :: (Enum a, Eq a, Fractional a) => [a] -> a -> a -> a interpol liste x0 x = ????