A2 TADS4 Estrutura De Dados Teleaula 2 Tema 2 Impressao

1244 palavras 5 páginas
15/09/2014

Estrutura de Dados
Tema 2: Recursividade.

Objetivos desse encontro
• Entender o conceito de recursividade;
• Criar funções recursivas;
• Comparar soluções recursivas e iterativas.

Relembrando ...

Função

• Solução adotada para dividir um programa em módulos, que executa, ações bem específicas; • Os módulos podem ser reutilizados quantas vezes forem necessários.
• Todo programa escrito em C possui, obrigatoriamente, uma função, a main.

1

15/09/2014

Função escrita antes da main
#include <stdio.h> int dobro(int n) { n = n * 2; return n;
}
int main() { int a; res; printf(“Digite um valor: “); scanf(“%d”, &a); res = dobro(a); printf(“Dobro = %d”, res); getchar(); }

Função escrita depois da main
#include <stdio.h> int dobro(int n); int main() { int a; res; printf(“Digite um valor: “); scanf(“%d”, &a); res = dobro(a); printf(“Dobro = %d”, res); getchar(); } int dobro(int n) { n = n * 2; return n; }

Tipos de funções
• Não recebem parâmetros e não retornam valor void funcao() {
...
}
• Recebem parâmetros e não retornam valor void funcao(par1, ...) {
...
}

2

15/09/2014

Tipos de funções
• Não recebem parâmetros e retornam valor tipo funcao() {
...
return x; }
• Recebem parâmetros e retornam valor tipo funcao(par1, ...) {
...
return x; }

Funções iterativas
• Iteração significa repetição.
• Funções iterativas realizam um procedimento repetitivo para gerar um resultado. • Cada iteração (ou cada repetição) resolve um pedaço do problema.
Quando a repetição termina, o problema está resolvido

Exemplo de funções iterativas
#include <stdio.h> int potencia(int b, int e); int main(void) { int base, exp, result; base = 2; exp = 3; result=potencia(base, exp); getchar(); }

3

15/09/2014

int potencia(int b, int e) { int i, r = 1; for (i = 1; i <= e; i++) { r = r * b;
}
return r;
}

Continuando
Tema 2: Recursividade.

O que é Recursividade?
• Alguma coisa que é definida em termos dela própria. • É a possibilidade de representar um problema em função
dele

Relacionados