Escolar Documentos
Profissional Documentos
Cultura Documentos
Federal de Viçosa
Departamento de Informática
Centro de Ciências Exatas e Tecnológicas
Introdução à Programação
Universidade Federal de Viçosa
Funções
INF 100 –
(parte 1)
1
Motivação
• Exemplo de cálculo de usando o algoritmo proposto
x
INF 100 – Introdução à Programação
1. Leia x
2. Faça r = x/2 # chute inicial para a raiz
3. Faça r = (r + x/r) / 2
4. Se |r² - x| > e, retorne ao passo 3
5. Escreva r
import math
– log(x)
– log10(x)
– exp(x)
– sqrt(x)
– tan(x)
– sin(x)
– cos(x)
– …
print()
print()
else:
break
soma = 0
for i in range(0, n):
while True:
x = int( input('Entre com a nota do próximo aluno: '))
if x < 0 or n > 100:
print('Valor deve estar entre 0 e 100')
else:
break
soma = soma + x
media = soma / n
print('Média das notas:', media )
else:
break
soma = 0
for i in range(0, n):
while True:
x = int( input('Entre com a nota do próximo aluno: '))
if x < 0 or n > 100:
print('Valor deve estar entre 0 e 100')
else:
break
soma = soma + x
media = soma / n
soma = soma + x
media = soma / n
print('Média das notas:', media )
suas necessidades:
– A função necessita de dados de entrada (parâmetros)?
– Se sim, quais dados?
– Espera-se que a função responda com alguma
informação?
– Se sim, qual ou quais?
<comandos>
return <valor(es) de retorno>
– Declarar a função;
– Programar a função;
– Evocar (chamar, usar) a função.
return v
def abs( x ):
if x < 0:
return -x
else:
return x
3
if x < 0:
return -x
else: 2
4 return x
Como implementar uma função mais genérica, que pode mostrar ou não
a mensagem de erro, de acordo com a minha necessidade?
...
mostraErro=False
...
...
... Nesse caso não precisa ter o comando return. A
... execução da função terminará quando o último
comando da função for executado.
def beep():
...
def pi():
return 3.1415926535897
beep()
sound( 200, 1000 )
print( pi() )
def media( a, b ):
m = (a + b) / 2
return m
def media( a, b ):
return (a + b) / 2
def maior( a, b ):
if a > b:
return a
else:
return b
def f( x, y ):
r = x*x + y (esqueceu do return)
def funcao( x, y ):
return x*x + y
def pi():
return 3.1415926535897
pi()
print( pi )
print( funcao( 12 ))
(faltou um parâmetro)
Universidade Federal de Viçosa
33
Departamento de Informática
Exercício 1
• Implemente uma função que recebe como
INF 100 – Introdução à Programação
m = a
if b > m: m = b
if c > m: m = c
return m
if a > b: return a
else: return b
def maior3( a, b, c ):
return maior( maior( a, b ), c )
def fatorial( n ):
fat = 1
while n > 1:
fat = fat * n
n = n - 1
return fat
def fatorial( n ):
fat = 1
for i in range(2, n+1):
fat = fat * i
return fat
t = t + dt
t1 = 0
t2 = 2*pi
dt = (t2 - t1) / n
t = t1
for i in range( 0, n ):
vx[i] = 16 * sin( t )**3
vy[i] = 13 * cos( t ) - 5 * cos( 2*t ) - 2 * cos( 3*t ) - cos( 4*t )
t = t + dt
t = t + dt
t1 = 0
t2 = 2*pi
dt = (t2 - t1) / n
t = t1
for i in range( 0, n ):
vx[i] = 16 * sin( t )**3
vy[i] = 13 * cos( t ) - 5 * cos( 2*t ) - 2 * cos( 3*t ) - cos( 4*t )
t = t + dt
t1 = valor_inicial
t2 = valor_final
dt = (t2 - t1) / n
t = t1
for i in range( 0, n ):
vx[i] = fx(t)
vy[i] = fy(t)
t = t + dt
plot.plot( vx, vy, nome, 'x', 'y' )
def fy_peixe( t ):
return sin( t ) * cos( 200*t )
def fx_cor( t ):
return 16 * sin( t )**3
def fy_cor( t ):
return 13 * cos( t ) - 5 * cos( 2*t ) - 2 * cos( 3*t ) - cos( 4*t )
...
n = 10000
t = t + dt
plot.plot( vx, vy, nome, 'x', 'y' )
def fx_peixe( t ):
return t
def fy_peixe( t ):
return sin( t ) * cos( 200*t )
def fx_cor( t ):
return 16 * sin( t )**3
def fy_cor( t ):
return 13 * cos( t ) - 5 * cos( 2*t ) - 2 * cos( 3*t ) - cos( 4*t )
def fx_borboleta( t ):
return sin( t ) * (exp( cos( t )) - 2*cos( 4*t ) - sin( t/12 )**5)
def fy_borboleta( t ):
return cos( t ) * (exp( cos( t )) - 2*cos( 4*t ) - sin( t/12 )**5)
def fx_pufes( t ):
return 2*cos( t ) + sin( 2*t ) * cos( 60*t )
def fy_pufes( t ):
return sin( 2*t ) + sin( 60*t )
def fx_Spirograph( t ):
return cos( 0.95*t ) * cos( t )
def fy_Spirograph( t ):
return cos( 0.95*t ) * sin( t )
n = 10000