Você está na página 1de 31

UFCD 10793 Escola Secundária da Amadora

Instrução def
2

int
len
float Funções do próprio Python.

print
input

def Instrução para criar um função própria.


Definição de uma nova função
3

Início do bloco

parâmetros

nome da função
Retorno de valor
4

A função soma anterior não retorna valores como a função len ou a int

Indica o valor a retornar


Retorno de valor - exemplo
5
Chamar função dentro de função
6

A função é_par é chamada


pela função par_impar
Retorno de 2 valores e help
7
Exercícios
8

Exercício: Escreva uma função que retorne o maior de dois


números.

Valores esperados:

maximo(5,6)  6
maximo(2,1)  2
maximo(7,7)  7
Exercícios
9

Exercício: Escreva uma função que receba dois números e retorne


True se o primeiro número for múltiplo do segundo.

Valores esperados:

multiplo(8,4)  True
multiplo(7,3)  False
multiplo(5,5)  True
Exercícios
10

Exercício: Escreva uma função que receba o lado (l) de um


quadrado e retorne a sua área.

Valores esperados:

area_quadrado(4)  16
area_quadrado(9)  81
Exercícios
11

Exercício: Escreva uma função que receba a base a altura de um


triângulo e retorne a sua área

Valores esperados:

area_triangulo(6,9)  27
area_triangulo(5,8)  20
Pesquisa numa lista
12
Calculo de média numa lista
13
Como não escrever uma função
14

Esta função só funcionaria para


uma lista com 5 elementos!!!

Exercício: Reescreva a função, corretamente, utilizando um ciclo for


em substituição do ciclo while.
Exemplo de aplicação
15

Calcular o fatorial de um número:


 3! 3 x 2 x 1 = 6
 4! 4 x 3 x 2 x 1 = 24
Funções nativas do Python
16
Variáveis locais e globais
17

Variável local:

• Variável interna à função


• Existe apenas dentro do alcance da função
• Não é possível aceder fora da função
• Passagem por parâmetros e retorno de valores

Variável global:

• Variável externa à função


• Pode ser vista por todas as funções do módulo e por todos
os módulos que importam o módulo que a definiu
Exemplos
18

Não recebe parâmetros


nem retorna valores!
Dificuldades de leitura

Variável global Podem ser alteradas a cada chamada da


(devem ser utilizadas o mínimo possível) função

Encapsulamento comprometido – função


depende de variável externa – (não declarada
no interior nem recebida como parâmetro)
Variável local e global
19

Por que razão o valor de a não mudou?


Variável local e global
20

Nota: Deve-se limitar o uso de variáveis globais.


Funções recursivas
21

Função recursiva: quando uma função se chama a si mesma.


Funções recursivas
22
Funções recursivas – exemplo1
23
Sucessão de Fibonacci
24

Leonardo Fibonacci
Matemático italiano
1170
Sucessão de Fibonacci
25

Galáxia Messier 74

Espiral concha do caracol


Sucessão de Fibonacci
26
Funções recursivas – Exercício
27

Sucessão de Fibonacci:

A sucessão será: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377….

Exercício: Desenvolva um função recursiva que cumpra a


sequência de Fibonacci explicando o crescimento da população
de coelhos .
Funções recursivas – Exercício
28

Exercício: Desenvolva um função recursiva que calcule o máximo


divisor comum (mdc), entre dois números a e b, onde a>b
Funções recursivas – Exercício
29

Exercício: Desenvolva um função recursiva que calcule o mínimo


múltiplo comum (mmc), entre dois números a e b

Nota: Utilize a função mdc do exercício anterior


Exercício
30

Exercício: Desenvolva uma função que verifique se é ou não um


número primo.

Nota: 0 e 1 não são primos e que 2 é o único número primo que é


par.
Exercício
31

Sucessão de Fibonacci:

A sucessão será: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377….

Exercício: Reescreva o programa mas sem usar uma função


recursiva

Você também pode gostar