Funções e Procedimentos
Modularização
Modularização
Vantagens da Modularização
Funções/Procedimentos
6
Instrução
Instrução
Instrução
Instrução
Instrução
Chamada ao
Subprograma
programa principal
subprograma
Funções/Procedimentos
Funções/Procedimentos
def nome_da_função(lista de parâmetros):
# corpo da função
8
Funções/Procedimentos
Funções/Procedimentos
Exemplo 1 – Procedimento sem parâmetros
def imprimeMensagem():
print ("Inicio da função.")
print ("Alô mundo!")
print (“Tchau!")
print ("Início do programa principal.")
print ("Chamada da função.")
imprimeMensagem()
print ("Fim do programa.")
Chamada da Função
Corpo da Função
Nesse momento o interpretador Python desvia sua execução para o corpo da função.
Passagem de Parâmetros
Exemplo 2 – Procedimento com parâmetros
num1 = int(input("Digite um número inteiro: "))
num2 = int(input("Digite outro número inteiro: "))
soma = num1 + num2
print("Soma = %d" % soma)
Esta tarefa será executada pela
função que vamos criar
def calculaSoma(num1, num2):
soma = num1 + num2
print("Soma = %d" % soma)
# programa principal
num1 = int(input("Digite um número inteiro: "))
num2 = int(input("Digite outro número inteiro: "))
calculaSoma(num1, num2) # Chamada da Função
Corpo da Função
Exemplo 2 – Procedimento com parâmetros
def calculaSoma(n1, n2):
soma = n1 + n2
print("Soma = %d" % soma)
# programa principal
num1 = int(input("Digite um número inteiro: "))
num2 = int(input("Digite outro número inteiro: "))
calculaSoma(num1, num2)
Os parâmetros não precisam ter o mesmo nome das variáveis do programa principal
Exemplo 2 – Procedimento com parâmetros
Exemplo 3 – Função com retorno
def calculaSoma(n1, n2):
soma = n1 + n2
return soma
# programa principal
num1 = int(input("Digite um número inteiro: "))
num2 = int(input("Digite outro número inteiro: "))
resposta = calculaSoma(num1, num2)
print("Soma = %d" % resposta)
Exemplo 4 – Função com retorno
# programa principal
nota = float(input("Digite a nota: "))
conceito = calculaConceito(nota)
print("Conceito: %s" % conceito)
def calculaConceito(n):
if n >= 9 and n <= 10:
return 'A'
elif n >= 8 and n < 9:
return 'B'
elif n >= 7 and n < 8:
return 'C'
elif n >= 5 and n < 7:
return 'D'
else:
return 'E'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Exemplo 4 – Teste de mesa
Linha | nota | conceito | Função |
13 | 7.0 | ? | � |
14 | 7.0 | ? | Chamada: calculaconceito |
14 | 7.0 | ‘C’ | � |
15 | 7.0 | ‘C’ | saída ‘C’ |
Linha | n | Retorno |
1 | 7.0 | � |
2 | 7.0 | � |
4 | 7.0 | � |
6 | 7.0 | � |
7 | 7.0 | ‘C’ |
calculaconceito
main/principal
Exercícios