programação estruturada ii - bolinhabolinha.com · 2 introdução definição • um...
TRANSCRIPT
1
Programação Estruturada II
Recursão
Prof. Rodrigo [email protected] http://www.bolinhabolinha.com
Apresentação
Prof. Rodrigo Rocha – [email protected]
Ementa
• Depuração e Documentação interna
• Modularização. Uso de funções Por valor
Por referência
• Ponteiros e suas aplicações Básico
Uso avançado
• Registros Básico
Uso avançado de vetores e matrizes
• Arquivos
• Recursão
2
Introdução
Definição
• Um método/função que invoca o próprio método/função
Atenção
• Devemos ter um condição de parada da recursão
• Uma condição que se torne falsa ou um contador que atinja um determinado valor
PROBLEMA
• Recursão que não termina
Recursão
Vantagens
• Código mais “limpo” e compacto
• “Fáceis” de serem implementados
Desvantagens
• Consumo elevado de recursos
• Mais difíceis de serem depurados
3
Exemplo
Somatória de números
• Ex: soma(5) = 1+2+3+4+5 = 15
Exemplo
Calculo do Máximo Divisor Comum (MDC)
• Fonte: somatematica.com.br
4
Exemplo
Exemplo
Série de Fibonacci
• 1 1 2 3 5 8 13 ....
5
Exercício
1-) Crie um programa recursivo que calcule a potência (potencia>=0) de um número inteiro.
Dica: 24 = 2 * 23
23 = 2 * 22
22 = 2 * 21
21 = 2 * 20
Exercícios
Criar um função recursiva para calcular o fatorial de um número
• Fonte: infoescola.com
Applet: http://ccism.pc.athabascau.ca/html/lo/repos/comp272/applets/factorial/index.html
6
Bibliografia
Livro texto• MIZRAHI, Victorine Viviane. Treinamento em linguagem C : módulos 1 e 2
: PLT.. 1ª ed. São Paulo: Pearson Prentice Hall, 2007.
• ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene A. V.i de. Fundamentos da Programação de Computadores : algoritmos, pascal e
C/C++. 1ª ed. São Paulo: Pearson Education, 2003.• SCHILDT, Herbert. C Completo e Total. 3ª ed. São Paulo: Pearson
Education, 2005.
Complementar• 1) KERNIGHAN, Brian. C : a linguagem de programação. 3ª ed. Rio de
Janeiro: CAMPUS, 1986.
• 2) HARBISON III, Samuel P.; STEELE/JR., Guy; HARTMANN, Savannah. C : manual de referência. 1ª ed. Rio de Janeiro: Ciência Moderna, 2002.
• 3) LOPES, Anita; GARCIA, Guto. Introdução à Programa. ç1ãªo ed. Rio de Janeiro: CAMPUS, 2002.
• 4) DAMAS, Luís. Linguagem C. 10ª ed. São Paulo: LTC, 2007.