Академический Документы
Профессиональный Документы
Культура Документы
Programao
Avalia funes
Mquina Funcional
l expresso 2+4
Soma de 2 e
avalia 4
exibe resultado 6
Mquina Funcional
usurio: 4 2
resposta: 2
usurio: f 3 - 2
resposta: definio de f no conhecida Arquivo texto
usurio: f 3 - 2
resposta: 2
Funes
Matemticas
Definio de Funo Matemtica
f = {(x,y) | x e y = 2x}
Exerccios
Infixada/ 2+3
+ soma binrio
pr-fixada (+) 2 3
52
subtrao/ binrio/ Infixada/
- (-) 5 2
simetria unrio pr-fixada -3
Infixada/ 7*3
* multiplicao binrio
pr-fixada (*) 7 3
Infixada/ 5/2
/ diviso binrio
pr-fixada (/) 5 2
Infixada/ 2^2
^ potncia binrio
pr-fixada (^) 2 2
div diviso inteira binrio pr-fixada div 5 2
resto da diviso
mod binrio pr-fixada mod 5 2
inteira
Exemplos
3+9/2 > 30
FALSE
7.4/2*3^2+sqrt 4
35.30
3+4 > 20 && 5*3 == 10 && 50 /= 34
FALSE
Descrio de Funes
f x y = x*y
Hugs> 4 * 3 2
10
Hugs> f 2 + 10
ERROR - Undefined variable "f"
exemplo1.hs
fx=x+1
Hugs>:load c:\boeres\exemplo1.hs
Main> f 2 + 10
13
Exerccio
hipo x y = sqrt (x * x + y * y)
Avaliao de expresses
5 sqrt (9 + 5 * 5) *
6 sqrt (9 + 25) *
7 sqrt 34 +
8 5.83095 sqrt
Precedncia
Ordem Operao
1 +,-
2 *, /
3 div, mod
Exerccios
1. Defina na linguagem Haskell as funes abaixo:
a) Determinao da rea de um retngulo de lados a e b
b) Determinao da rea de um crculo de raio r
c) Determinao da distncia entre dois pontos
2. Calcule a mdia aritmtica de trs nmeros.
Exerccios - resolvidos
ex2a a b = a * b
ex2b r = 3.14 * r*r
ex2c x1 y1 x2 y2 = sqrt((x2-x1)^2 + (y2-y1)^2)
ex3 n1 n2 n3 = (n1+n2+n3)/3