Escolar Documentos
Profissional Documentos
Cultura Documentos
• Unidade de Ensino: 03
• Teleaula nº: 03
Ma. Vanessa Ma)as Leite
1 2
Funções
A ideia de criar programas com blocos de funcionalidades vem de
Funções
3 4
Função Funções
Trecho de código escrito para solucionar um
subproblema;
• Dividir a complexidade de um problema maior;
• Evitar repe9ção de código;
• Modularização;
5 6
1
20/03/2020
Funções Funções
<9po de retorno> – Obrigatório. Esse parâmetro <parâmetros> – Opcional.
indica qual o 9po de valor a função irá retornar.
Pode ser um valor inteiro (int), decimal (float ou <retorno> – Quando o 9po de retorno for void
double), caractere (char), etc. esse parâmetro não precisa ser usado, porém,
quando não for void é obrigatório.
<nome> – Obrigatório. Parâmetro que especifica o
nome que iden9ficará a função.
7 8
Funções
Funções com
Ponteiros
9 10
Ponteiro Ponteiro
Tipo especial de variável, que armazena um <9po> *<nome_do_ponteiro>;
endereço de memória; Exemplo: int *idade;
O acesso à memória é feito usando dois
operadores: A criação de um ponteiro só faz sen9do se for
• Asterisco (*): usado para criação do ponteiro; associada a algum endereço de memória.
• “&” : Acessar o endereço da memória;
1. int ano = 2018;
11 12
2
20/03/2020
13 14
Função malloc()
• Alocar memória dinamicamente;
• Exemplo: int* memoria = malloc (100); Escopo e Passagem
• Retorna dois valores: NULL ou um ponteiro
genérico; de Parâmetros
15 16
Escopo Escopo
Variável Local: são “enxergadas” somente dentro
do corpo da função onde foram definidas;
17 18
3
20/03/2020
Escopo Parâmetros
19 20
Parâmetros
Passagem de Valor: a função cria variáveis locais
automa9camente para armazenar esses valores e
após a execução da função essas variáveis são
liberadas.
21 22
23 24
4
20/03/2020
25 26
27 28
29 30
5
20/03/2020
Função Recursiva
31 32
Fatorial
O fatorial de um número qualquer N consiste em
Exemplos de mul9plicações sucessivas até que N seja igual ao
valor unitário, ou seja, 5!=5×4×3×2×1, que resulta
Recursividade em 120.
33 34
Fatorial Fatorial
35 36
6
20/03/2020
Fibonacci Fibonacci
A sequência de Fibonacci: int fibonacci(int n) {
if (n == 0)
return 0;
else {
if (n == 1)
return 1;
Encontrar o n-ésimo elemento da sequência. else
return fibonacci(n-1) + fibonacci(n-2);
}}
37 38
Fibonacci
int Fib(int n)
{
int i, j, f;
Recursividade
i = 1; f = 0;
for (j = 1; j <= n; j++) {
f + = i;
i = f - i; }
return f;
}
39 40
41 42
7
20/03/2020
Exemplo em C
43 44
45 46
Recapitulando
• Funções;
• Funções com parâmetros;
• Escopo e Passagem de Parâmetros;
• Recursividade;
47 48