A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução à Programação: uma Abordagem Funcional Programação I Engenharia de Computação Prof.ª Claudia Boeres 2009/1.

Apresentações semelhantes


Apresentação em tema: "Introdução à Programação: uma Abordagem Funcional Programação I Engenharia de Computação Prof.ª Claudia Boeres 2009/1."— Transcrição da apresentação:

1 Introdução à Programação: uma Abordagem Funcional Programação I Engenharia de Computação Prof.ª Claudia Boeres 2009/1

2 O ponto P (x, y) pertence à área cinza? P (x, y) ? a a/2 C (x1, y1)

3 Definições Condicionais Adequadas para representação de situações de tomada de decisão

4 Estrutura if-then-else Sintaxe: if then else

5 Exemplo Considere a função que determina o valor da passagem aérea de um adulto, para um determinado trecho, por exemplo, Vitória- Manaus, considerando a sua idade. Pessoas com idade a partir de 60 anos possuem um desconto de 40% do valor. Considere ainda que a passagem para o trecho considerado custe R$ 600,00.

6 Exemplo Considere a função que associa com um determinado rendimento o Imposto de Renda a ser pago. Até um determinado valor, o contribuinte não paga imposto, e a partir de então o rendimento é dividido em faixas (intervalos), aos quais se aplicam diferentes taxas: acima de entre e entre e inferior ou igual a DescontoalíquotaFaixa

7 Árvore de Decisão

8 Árvore de decisão s <= ir1 s [10800, 20000] ir2 s [20001, 30000] ir3 ir4

9 Solução ir s = if s <= then ir1 else if pert s then ir2 else if pert s then ir3 else ir4 where ir1 = 0 ir2 = s * ir3 = s * ir4 = s * pert x a b = x>=a && x<=b

10 Exercício Dados três números, determine o maior deles. Faça a árvore de decisão Descreva a solução em haskell usando expressões condicionais

11 Guarded commands Permite que uma mesma função seja descrita por várias definições, cada uma delas protegida por uma expressão lógica; Sintaxe: | =... | = | otherwise =

12 Exemplo ir1 s | s<=10800 = ir1 | pert s = ir2 | pert s = ir3 | otherwise = ir4 where ir1 = 0 ir2 = s * ir3 = s * ir4 = s * pert x a b = x >= a && x <= b

13 O ponto P (x, y) pertence a qual das áreas 1, 2, 3 e 4? P (x, y) ? a a/2 C (x1, y1)


Carregar ppt "Introdução à Programação: uma Abordagem Funcional Programação I Engenharia de Computação Prof.ª Claudia Boeres 2009/1."

Apresentações semelhantes


Anúncios Google