Haskell ufc quixadalista1

1
Projeto :Programação Funcional em Haskell ,UFC Quixadá 1. Responda a cada uma das seguintes questões, indicando apenas o resultado de cada expressão. (a) head (reverse [1,2,3]) = _________________________________________ (b) map (*2) [0,1,2] = _________________________________________ (c) map (*2) [1,2,3] = _________________________________________ (d) head (tail [1,2,3]) = _________________________________________ (e) tail (reverse [1,2,3]) = _________________________________________ (f) Indique um tipo admissível para [[1],[2,3],[4,5,6]]: _________________________________________ (g) Indique um tipo admissível para [['a'],['c','d'],['f','g','h']]: _________________________________________ (i) Indique um tipo admissível para head [[1],[2,3],[4,5,6]]: _________________________________________ (h) Considere a seguinte definição da função last do prelúdio-padrão last [x] = x last (x:xs) = last xs Indique o tipo mais geral desta definição: _________________________________________ 2. Qual é o resultado da expressão tail [1,3..7] ? (a) [3,4,5,6,7] (b) [3,5,7] (c) [3,7] 3. Qual é o resultado da expressão head [[1,2,3]] ? (a) 1 (b) [1] (c) [1,2,3] 4. Qual dos seguintes tipos é admissível para a função media x y = (x+y)/2 ? (a) media :: Float -> Float -> Float (b) media :: Int -> Int -> Int (c) media :: Int -> Int -> Float

Transcript of Haskell ufc quixadalista1

Page 1: Haskell ufc quixadalista1

Projeto :Programação Funcional em Haskell ,UFC Quixadá

1. Responda a cada uma das seguintes questões, indicando apenas oresultado de cada expressão.

(a) head (reverse [1,2,3]) = _________________________________________

(b) map (*2) [0,1,2] = _________________________________________

(c) map (*2) [1,2,3] = _________________________________________

(d) head (tail [1,2,3]) = _________________________________________(e) tail (reverse [1,2,3]) = _________________________________________

(f) Indique um tipo admissível para [[1],[2,3],[4,5,6]]:

_________________________________________

(g) Indique um tipo admissível para [['a'],['c','d'],['f','g','h']]:

_________________________________________

(i) Indique um tipo admissível para head [[1],[2,3],[4,5,6]]:

_________________________________________

(h) Considere a seguinte definição da função last do prelúdio-padrãolast [x] = xlast (x:xs) = last xsIndique o tipo mais geral desta definição:

_________________________________________

2. Qual é o resultado da expressão tail [1,3..7] ?(a) [3,4,5,6,7](b) [3,5,7](c) [3,7]

3. Qual é o resultado da expressão head [[1,2,3]] ?(a) 1(b) [1](c) [1,2,3]

4. Qual dos seguintes tipos é admissível para a funçãomedia x y = (x+y)/2 ?(a) media :: Float -> Float -> Float(b) media :: Int -> Int -> Int(c) media :: Int -> Int -> Float