Your SlideShare is downloading. ×
6 paradigma funcional usando haskell
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

6 paradigma funcional usando haskell

570

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
570
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Paradigmas de Linguagem de Programação
    Prof. Péricles Miranda
    periclesmiranda@gmail.com
  • 2. Paradigma Funcional usando Haskell
  • 3. Execução Condicional
  • 4. Execução Condicional
    Tiposde Expressões:
    Casamento de padrões;
    Expressãoif-then-else;
    ExpressõesGuardadas;
    ExpressãoCase.
  • 5. Casamento de Padrões
    f :: Int -> Int
    f 0 = 0
    f 1 = 1
    f 2 = 1
    f n = n * fat (n-1)
    f _ = 100
    Características:
    Constantes no lugar de nomes de variáveisrepresentandoargumentos
    A expressãosóseráexecutada se o argumento for igual a constantepassada;
    Váriasdefiniçõespara o corpodafunção
    A primeiradefiniçãoquesatisfizerospadrõesseráutilizadaparadefinir o valor dachamada.
  • 6. Expressão if-then-else
    f x = if (x>0) then
    1
    else
    -1
    Características:
    Similar aocomando de C/C++/Java;
    A expressãocondicional é avaliada e utilizadaparaescolher entre osdoiscasos.
  • 7. Expressões Guardadas
    t x | x>0 = 1
    | x==0 = 0
    | otherwise = -1
    Características:
    Um conjunto de pares (condição, expressão);
    As condiçõessãoavaliadassequencialmente;
    A primeiracondiçãoverdadeiradeterminará o valor dafunção.
  • 8. Expressão Case
    t x = case x of
    0 -> 1+2
    1 -> 2+10
    _ -> 10+2
    Características:
    Funcionalidadesemelhandoaocomando “switch”:
    A expressão “x” é avaliada;
    O resultadodaavaliação é comparado com cadaconstante;
    A expressãoassociada a constantecorretaseráavaliada e retornadacomoresultado.
  • 9. Recursividade
  • 10. Recursividade
    Umafunçãoquechama a siprópria;
    Geralmente a definição é divididaem
    Casosbases;
    Casosrecursivos;
    Fundamental emlinguagensfuncionais
    Utilizada no lugar de laços.
  • 11. VamosPraticar?
  • 12. Exercícios
    Implementar:
    Concatenar string ‘n’ vezes, onde ‘n’ e a string sãopassadascomoparâmetros;
    Somar valor passadocomoparâmetro ‘n’ vezes;
    Retornar ‘n-enésimo’ elemento de uma PA, de acordo com constantepassadacomoparâmetro;
    Fatorial;
    Fibonacci;

×