SlideShare uma empresa Scribd logo
1 de 8
Noções de Recursão
Adagenor Ribeiro
Multiplicação de Números Naturais
• A multiplicação de números naturais (×) pode
ser definida por infinitas aplicações da função
de adição (+). Senão vejamos:
Multiplicação de Números Naturais
⎨
m X n =
0, se m = 0
n, se m = 1
n + n, se m = 2
n + n + n, se m = 3
:
:
Como não é possível escrever um número infinito de casos, este método de definição de
funções só é usual se existir alguma “regularidade” ou algum “princípio de unificação”
entre os casos, que permita gerar os casos não definidos, a partir de casos já definidos.
⎨m X n =
0, se m = 0
n, se m = 1
n + n, se m = 2
n + n + n, se m = 3
:
:
Se existir tal princípio de unificação, ele deve ser estabelecido, sendo este o propósito
das “definições recursivas”, onde um objeto é definido em termos de si próprio. Por
exemplo, uma definição recursiva da multiplicação anterior pode ser:
×: N × N → N
Leis da Recursão
Assim como os robôs do romance “Eu robô” de
Isaac Asimov, todos os algoritmos recursivos devem
obedecer a três leis importantes e fundamentais:
1a. LEI: Um algoritmo recursivo deve ter um caso básico.
2a. LEI: Um algoritmo recursivo deve mudar o seu estado
e se aproximar do caso básico.
3a. LEI: Um algoritmo recursivo deve chamar a si mesmo,
recursivamente.
Leis da Recursão
Assim como os robôs de Isaac Asimov, todos os
algoritmos recursivos devem obedecer a três leis
importantes:
1 Um algoritmo recursivo deve ter um caso básico
Um caso básico é a condição que permite que o algoritmo
recursivo pare de recorrer. Um caso básico é tipicamente um
problema que é suficientemente pequeno para resolver
diretamente.
2 Um algoritmo recursivo deve mudar o seu estado e se aproximar
do caso básico.
Para obedecer a segunda lei, temos de arranjar uma mudança de
estado que leve o algoritmo para o caso básico. A mudança de
estado significa que alguns dados utilizados pelo algoritmo são
modificados. Normalmente, os dados que representam o problema
são reduzidos de alguma forma.
Leis da Recursão
3 Um algoritmo recursivo deve chamar a si mesmo,
recursivamente.
A última lei é que o algoritmo deve chamar a si mesmo. Esta é a
própria definição de recursão.
A recursão é um conceito confuso para muitos programadores
iniciantes. Como um programador novato, você aprendeu que
funções são boas porque você pode ter um grande problema e
dividi-lo em problemas menores.
Os problemas menores podem ser resolvidos escrevendo uma
função para resolver cada problema.
Quando falamos de recursão pode parecer que estamos a falar em
círculos. Nós temos um problema a resolver com uma função, mas
a função resolve o problema chamando a si mesma! Mas a lógica
não é circular de maneira alguma; a lógica de recursão é uma
expressão elegante de resolver um problema por dividi-lo em
problemas menores e mais fáceis.
adagenor@yahoo.com
“Material em Construção”

Mais conteúdo relacionado

Semelhante a Noções Recursão

Semelhante a Noções Recursão (20)

ApostilaAlgoritmo
ApostilaAlgoritmoApostilaAlgoritmo
ApostilaAlgoritmo
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 
Análise da complexidade de algoritmos
Análise da complexidade de algoritmosAnálise da complexidade de algoritmos
Análise da complexidade de algoritmos
 
Introdução
IntroduçãoIntrodução
Introdução
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.ppt
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).ppt
 
Aula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvidoAula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvido
 
Pged 07
Pged 07Pged 07
Pged 07
 
Cap04
Cap04Cap04
Cap04
 
Cap04
Cap04Cap04
Cap04
 
Cap04
Cap04Cap04
Cap04
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
59 algoritmosgeneticos(1)
59 algoritmosgeneticos(1)59 algoritmosgeneticos(1)
59 algoritmosgeneticos(1)
 
Estrutura de repetição
Estrutura de repetiçãoEstrutura de repetição
Estrutura de repetição
 
Estrutura de dados em Java - Recursividade
Estrutura de dados em Java - RecursividadeEstrutura de dados em Java - Recursividade
Estrutura de dados em Java - Recursividade
 
Algorítmos e Lógica de Programação1.pptx
Algorítmos e Lógica de Programação1.pptxAlgorítmos e Lógica de Programação1.pptx
Algorítmos e Lógica de Programação1.pptx
 
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
 
Introdução a Machine Learning
Introdução a Machine LearningIntrodução a Machine Learning
Introdução a Machine Learning
 
382 po apostila_completa_mais_livro
382 po apostila_completa_mais_livro382 po apostila_completa_mais_livro
382 po apostila_completa_mais_livro
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 

Mais de Adagenor Ribeiro

Mais de Adagenor Ribeiro (10)

Indicador Social
Indicador SocialIndicador Social
Indicador Social
 
Metodo101
Metodo101Metodo101
Metodo101
 
Xml Ws
Xml WsXml Ws
Xml Ws
 
Desafios E Estrat Desenvolvimento Amazonia Completa
Desafios E Estrat Desenvolvimento   Amazonia  CompletaDesafios E Estrat Desenvolvimento   Amazonia  Completa
Desafios E Estrat Desenvolvimento Amazonia Completa
 
PLANO REGIOMAL DE DESENVOLVIMENTO DA AMAZÔNIA
PLANO REGIOMAL DE DESENVOLVIMENTO DA AMAZÔNIAPLANO REGIOMAL DE DESENVOLVIMENTO DA AMAZÔNIA
PLANO REGIOMAL DE DESENVOLVIMENTO DA AMAZÔNIA
 
Html E Websemantica Trabalho
Html E Websemantica TrabalhoHtml E Websemantica Trabalho
Html E Websemantica Trabalho
 
E Alg
E AlgE Alg
E Alg
 
Sgml
SgmlSgml
Sgml
 
Icc02 B Algoritmos
Icc02 B AlgoritmosIcc02 B Algoritmos
Icc02 B Algoritmos
 
Icc01-A-Introducao
Icc01-A-IntroducaoIcc01-A-Introducao
Icc01-A-Introducao
 

Último

COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxRonys4
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Livro O QUE É LUGAR DE FALA - Autora Djamila Ribeiro
Livro O QUE É LUGAR DE FALA  - Autora Djamila RibeiroLivro O QUE É LUGAR DE FALA  - Autora Djamila Ribeiro
Livro O QUE É LUGAR DE FALA - Autora Djamila RibeiroMarcele Ravasio
 
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdf
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdfCD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdf
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdfManuais Formação
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBAline Santana
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.silves15
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.MrPitobaldo
 
Slide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxSlide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxssuserf54fa01
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniCassio Meira Jr.
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?Rosalina Simão Nunes
 

Último (20)

COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
Livro O QUE É LUGAR DE FALA - Autora Djamila Ribeiro
Livro O QUE É LUGAR DE FALA  - Autora Djamila RibeiroLivro O QUE É LUGAR DE FALA  - Autora Djamila Ribeiro
Livro O QUE É LUGAR DE FALA - Autora Djamila Ribeiro
 
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdf
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdfCD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdf
CD_B3_C_ Criar e editar conteúdos digitais em diferentes formatos_índice.pdf
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.
1.ª Fase do Modernismo Brasileira - Contexto histórico, autores e obras.
 
Slide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxSlide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptx
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?
 

Noções Recursão

  • 2. Multiplicação de Números Naturais • A multiplicação de números naturais (×) pode ser definida por infinitas aplicações da função de adição (+). Senão vejamos:
  • 3. Multiplicação de Números Naturais ⎨ m X n = 0, se m = 0 n, se m = 1 n + n, se m = 2 n + n + n, se m = 3 : : Como não é possível escrever um número infinito de casos, este método de definição de funções só é usual se existir alguma “regularidade” ou algum “princípio de unificação” entre os casos, que permita gerar os casos não definidos, a partir de casos já definidos.
  • 4. ⎨m X n = 0, se m = 0 n, se m = 1 n + n, se m = 2 n + n + n, se m = 3 : : Se existir tal princípio de unificação, ele deve ser estabelecido, sendo este o propósito das “definições recursivas”, onde um objeto é definido em termos de si próprio. Por exemplo, uma definição recursiva da multiplicação anterior pode ser: ×: N × N → N
  • 5. Leis da Recursão Assim como os robôs do romance “Eu robô” de Isaac Asimov, todos os algoritmos recursivos devem obedecer a três leis importantes e fundamentais: 1a. LEI: Um algoritmo recursivo deve ter um caso básico. 2a. LEI: Um algoritmo recursivo deve mudar o seu estado e se aproximar do caso básico. 3a. LEI: Um algoritmo recursivo deve chamar a si mesmo, recursivamente.
  • 6. Leis da Recursão Assim como os robôs de Isaac Asimov, todos os algoritmos recursivos devem obedecer a três leis importantes: 1 Um algoritmo recursivo deve ter um caso básico Um caso básico é a condição que permite que o algoritmo recursivo pare de recorrer. Um caso básico é tipicamente um problema que é suficientemente pequeno para resolver diretamente. 2 Um algoritmo recursivo deve mudar o seu estado e se aproximar do caso básico. Para obedecer a segunda lei, temos de arranjar uma mudança de estado que leve o algoritmo para o caso básico. A mudança de estado significa que alguns dados utilizados pelo algoritmo são modificados. Normalmente, os dados que representam o problema são reduzidos de alguma forma.
  • 7. Leis da Recursão 3 Um algoritmo recursivo deve chamar a si mesmo, recursivamente. A última lei é que o algoritmo deve chamar a si mesmo. Esta é a própria definição de recursão. A recursão é um conceito confuso para muitos programadores iniciantes. Como um programador novato, você aprendeu que funções são boas porque você pode ter um grande problema e dividi-lo em problemas menores. Os problemas menores podem ser resolvidos escrevendo uma função para resolver cada problema. Quando falamos de recursão pode parecer que estamos a falar em círculos. Nós temos um problema a resolver com uma função, mas a função resolve o problema chamando a si mesma! Mas a lógica não é circular de maneira alguma; a lógica de recursão é uma expressão elegante de resolver um problema por dividi-lo em problemas menores e mais fáceis.