Vissza

3. labor

I. Mit csinálnak az alábbi függvényhívások, ahol az atlag a számok átlagát meghatározó függvény?
atlag :: (Floating a) => [a] -> a
atlag ls = (sum ls) / fromIntegral (length ls)

> (atlag . filter (>= 4.5)) [6.5, 7.4, 8.9, 9.5, 3.5, 6.3, 4.2]
> atlag $ filter (< 4.5) [6.5, 7.4, 8.9, 9.5, 3.5, 6.3, 4.2]
> (take 4 . reverse . filter odd ) [1..20]
> take 4 . reverse . filter odd $ [1..20]
> take 4 ( reverse ( filter odd [1..20]))
> take 4 $ reverse $ filter odd $ [1..20]

II. Könyvtárfüggvények használata nélkül írjuk meg azt a Haskell függvényt, amely

III. Alkalmazzuk a map függvényt a II.-nél megírt függvényekre.

IV. Írjunk egy Haskell függvényt, amely meghatározza a P(x) = a0 + a1·x + a2·x2 +...+ an·xn polinom adott x0 értékre való behelyettesítési értékét.

V. Ha adva van egy P pont koordinátája a kétdimenziós síkban, és adott az lsP pontok egy listája, írjunk egy Haskell függvényt, amely meghatározza azt az lsP-beli P1 pontot, amely legközelebb van a P ponthoz.