segunda-feira, 23 de setembro de 2013

Capítulo 01 do Livro Introdução ao Haskell

Respostas do capítulo 01 do Livro Introdução ao Haskell
Autores: Stenio Longo Araújo
                 Benedito Melo Acióly

-- EXEMPLOS
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o quadrado de um número
-- Arquivo: Primeiro.hs
----------------------------------------------------------------------------------------------------
quadrado :: Int -> Int
quadrado numero = numero * numero

----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o maior de dois inteiros
----------------------------------------------------------------------------------------------------
maior :: Int -> Int -> Int
maior a b  
        | a >= b = a
        | b > a = b
       
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o maior de dois inteiros
-- Versão 2
----------------------------------------------------------------------------------------------------
maior2 :: Int -> Int -> Int
maior2 a b
        | a >= b = a
        | otherwise = b
       
----------------------------------------------------------------------------------------------------
-- EXERCÍCIOS
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o cubo de um número
----------------------------------------------------------------------------------------------------
cubo :: Int -> Int
cubo numero = numero * numero * numero

----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o cubo de um número a partir da função quadrado
----------------------------------------------------------------------------------------------------
cubo2 :: Int -> Int
cubo2 numero = quadrado numero * numero

----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o menor de dois inteiros
----------------------------------------------------------------------------------------------------
menor :: Int -> Int -> Int
menor a b
        | a <= b = a
        | b < a = b
       
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o menor de dois inteiros
-- Versão 2
----------------------------------------------------------------------------------------------------
menor2 :: Int -> Int -> Int
menor2 a b
        | a <= b = a
        | otherwise = b
       
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o maior de três inteiros
-- Versão 3
----------------------------------------------------------------------------------------------------
maior3 :: Int -> Int -> Int -> Int
maior3 a b c
        | a >= b && a >= c = a
        | b >= a && b >= c = b
        | otherwise = c
       
----------------------------------------------------------------------------------------------------
-- Objetivo: Calcular o maior de três inteiros a partir da função maior
-- Versão 4
----------------------------------------------------------------------------------------------------
maior4 :: Int -> Int -> Int -> Int
maior4 a b c = maior a (maior b c)

----------------------------------------------------------------------------------------------------
-- Objetivo: Inverter o sinal de um número inteiro
----------------------------------------------------------------------------------------------------   
negar :: Int -> Int
negar numero = numero * (-1)

0 comentários:

Postar um comentário