SlideShare uma empresa Scribd logo
Universidade Federal de Uberlˆandia - UFU
Faculdade de Computac¸ ˜ao - FACOM
Lista de exerc´ıcios de programac¸ ˜ao em linguagem C
Exerc´ıcios: Recurs˜ao
1. Crie uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e calcule o somat´orio
dos n´umeros de 1 a N.
2. Fac¸a uma func¸ ˜ao recursiva que calcule e retorne o fatorial de um n´umero inteiro N.
3. Escreva uma func¸ ˜ao recursiva que calcule a soma dos primeiros n cubos: S(n) = 13 +
23 + ... + n3
4. Crie uma func¸ ˜ao recursiva que receba dois inteiros positivos k e n e calcule kn.
5. Fac¸a uma func¸ ˜ao recursiva que calcule e retorne o N-´esimo termo da sequˆencia Fibo-
nacci. Alguns n´umeros desta sequˆencia s˜ao: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89...
6. A multiplicac¸ ˜ao de dois n´umeros inteiros pode ser feita atrav´es de somas sucessivas.
Proponha um algoritmo recursivo Multip Rec(n1,n2) que calcule a multiplicac¸ ˜ao de dois
inteiros.
7. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e imprima todos os
n´umeros naturais de 0 at´e N em ordem crescente.
8. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e imprima todos os
n´umeros naturais de 0 at´e N em ordem decrescente.
9. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo par N e imprima todos
os n´umeros pares de 0 at´e N em ordem crescente.
10. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo par N e imprima todos
os n´umeros pares de 0 at´e N em ordem decrescente.
11. Escreva uma func¸ ˜ao recursiva que exibe todos os elementos em um array de inteiros,
separados por espac¸o.
12. Crie um programa que contenha uma func¸ ˜ao recursiva para encontrar o menor elemento
em um vetor.
13. Escreva uma func¸ ˜ao recursiva SomaSerie(i,j,k). Esta func¸ ˜ao devolve a soma da s´erie de
valores do intervalo [i,j], com incremento k.
14. Escreva uma func¸ ˜ao recursiva ImprimeSerie(i,j,k). Esta func¸ ˜ao imprime na tela a s´erie
de valores do intervalo [i,j], com incremento k.
15. Fac¸a uma func¸ ˜ao recursiva que calcule o valor da s´erie S descrita a seguir para um valor
n > 0 a ser fornecido como parˆametro para a mesma.
S = 2 +
5
2
+
10
3
+ ... +
1 + n2
n
1
16. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo impar N e retorne
o fatorial duplo desse n´umero. O fatorial duplo ´e definido como o produto de todos os
n´umeros naturais ´ımpares de 1 at´e algum n´umero natural ´ımpar N. Assim, o fatorial duplo
de 5 ´e
5!! = 1 ∗ 3 ∗ 5 = 15
17. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o fatorial
qu´adruplo desse n´umero. O fatorial qu´adruplo de um n´umero N ´e dado por:
(2n)!
n!
18. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o super-
fatorial desse n´umero. O superfatorial de um n´umero N ´e definida pelo produto dos N
primeiros fatoriais de N. Assim, o superfatorial de 4 ´e
sf(4) = 1! ∗ 2! ∗ 3! ∗ 4! = 288
19. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o hiperfa-
torial desse n´umero. O hiperfatorial de um n´umero N, escrito H(n), ´e definido por
H(n) =
n
k=1
kk
= 11
∗ 22
∗ 33
...(n − 1)n−1
∗ nn
20. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o fatorial
exponencial desse n´umero. Um fatorial exponencial ´e um inteiro positivo N elevado `a
potˆencia de N-1, que por sua vez ´e elevado `a potˆencia de N-2 e assim em diante. Ou
seja,
n(n−1)(n−2)...
21. Escreva uma func¸ ˜ao recursiva que calcule a sequˆencia dada por:
F(1) = 1
F(2) = 2
F(n) = 2 * F(n-1) + 3 * F(n-2).
22. Uma sequˆencia de Fibonacci generalizada, de f0 a f1 ´e definida como fibg(f0, f1, 0),
fibg(f0, f1, 1), fibg(f0, f1, 2), ..., onde:
fibg(f0, f1, 0) = f0
fibg(f0, f1, 1) = f1
fibg(f0, f1, n) = fibg(f0, f1, n-1) + fibg(f0, f1, n-2), se n > 1.
23. Fac¸a uma func¸ ˜ao recursiva que permita somar os elementos de um vetor de inteiros.
24. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da
sequˆencia de tribonacci. Os n´umeros tribonacci s˜ao definidos pela seguinte recurs˜ao
f(n) = 0 se n = 0
f(n) = 0 se n = 1
f(n) = 1 se n = 2
f(n) = f(n-1)+f(n-2)+f(n-3) se n > 3
2
25. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da
sequˆencia de tetranacci. Os n´umeros tetranacci iniciam com quatro termos pr´e-determinados
e a partir da´ı todos os demais n´umeros s˜ao obtidos pela soma dos quatro n´umeros ante-
riores. Os primeiros n´umeros tetranacci s˜ao: 0, 0, 0, 1, 1, 2, 4, 8, 15, 29, 56, 108, 208...
26. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da
sequˆencia de Padovan. A sequˆencia de Padovan ´e uma sequˆencia de naturais P(n) de-
finida pelos valores iniciais
P(0) = P(1) = p(2) = 1
e a seguinte relac¸ ˜ao recursiva
P(n) = P(n - 2) + P(n - 3) se n > 3
Alguns valores da sequˆencia s˜ao: 1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28...
27. Implemente a func¸ ˜ao h definida recursivamente por:
h(m,n) = m+1 ,se n = 1
h(m,n) = n+1 ,se m = 1
h(m,n) = h(m,n-1)+h(m-1,n) ,se m>1,n>1
28. Fac¸a uma func¸ ˜ao recursiva para computar a func¸ ˜ao de Ackerman. A func¸ ˜ao de Acherman
´e definida recursivamente nos n´umeros n˜ao negativos como segue:
A(m,n) = n+1 se m = 0
A(m,n) = A(m-1,1) se m > 0 e n = 0
A(m,n) = A(m-1,A(m,n-1)) se m > 0 e n > 0
29. Fac¸a uma func¸ ˜ao recursiva para calcular os n´umeros de Pell. Os n´umeros de Pell s˜ao
definidos pela seguinte recurs˜ao
p(n) = 0 se n = 0
p(n) = 1 se n = 1
p(n) = 2p(n-1)+ p(n-2) se n > 1
30. Fac¸a uma func¸ ˜ao recursiva para calcular os n´umeros de Catalan. Os n´umeros de Cata-
lan s˜ao definidos pela seguinte recurs˜ao
C(n) = 1 se n = 0
C(n) = 2(2n−1)
n+1 C(n − 1) se n > 0
Alguns n´umeros desta sequˆencia s˜ao: 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796,
58786...
31. Uma palavra de Fibonacci ´e definida por
f(n) = b se n = 0
f(n) = a se n = 1
f(n) = f(n-1)+f(n-2) se n > 1
3
Aqui o s´ımbolo “+” denota a concatenac¸ ˜ao de duas strings. Esta sequˆencia inicia com as
seguintes palavras:
b, a, ab, aba, abaab, abaababa, abaababaabaab, ...
Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne a N-´esima palavra de
Fibonacci.
32. Dado um n´umero n na base decimal, escreva uma func¸ ˜ao recursiva que converte este
n´umero para bin´ario.
33. Crie um programa que receba um vetor de n´umeros reais com 100 elementos. Escreva
uma func¸ ˜ao recursiva que inverta a ordem dos elementos presentes no vetor.
34. Fac¸a uma func¸ ˜ao recursiva que permita inverter um n´umero inteiro N. Ex: 123 - 321
35. Escreva uma func¸ ˜ao recursiva que determine quantas vezes um d´ıgito K ocorre em um
n´umero natural N. Por exemplo, o d´ıgito 2 ocorre 3 vezes em 762021192.
36. O m´aximo divisor comum dos inteiros x e y ´e o maior inteiro que ´e divis´ıvel por x e y.
Escreva uma func¸ ˜ao recursiva mdc que retorna o m´aximo divisor comum de x e y. O
mdc de x e y ´e definido como segue: se y ´e igual a 0, ent˜ao mdc(x,y) ´e x; caso contr´ario,
mdc(x,y) ´e mdc (y, x%y), onde % ´e o operador resto.
37. Escreva uma func¸ ˜ao recursiva que permita fazer a multiplicac¸ ˜ao `a russa de 2 entradas.
A Multiplicac¸ ˜ao `a russa consiste em:
(a) Escrever os n´umeros A e B, que se deseja multiplicar na parte superior das colunas.
(b) Dividir A por 2, sucessivamente, ignorando o resto at´e chegar `a unidade, escrever
os resultados da coluna A.
(c) Multiplicar B por 2 tantas vezes quantas se haja dividido A por 2, escrever os resul-
tados sucessivos na coluna B.
(d) Somar todos os n´umeros da coluna B que estejam ao lado de um n´umero ´ımpar da
coluna A.
Exemplo: 27 * 82
A B Parcelas
27 82 82
13 164 164
6 328 -
3 656 656
1 1312 1312
Soma = 2214
4

Mais conteúdo relacionado

Mais procurados

Tr pascal binnewton-teoria-e-exerc
Tr pascal binnewton-teoria-e-exercTr pascal binnewton-teoria-e-exerc
Tr pascal binnewton-teoria-e-exerc
Neto Silva
 
Matematica 4 exercicios gabarito 04
Matematica 4 exercicios gabarito 04Matematica 4 exercicios gabarito 04
Matematica 4 exercicios gabarito 04
comentada
 
02 potenciao e radiciao
02 potenciao e radiciao02 potenciao e radiciao
02 potenciao e radiciao
resolvidos
 
Propriedades potenciação
Propriedades  potenciaçãoPropriedades  potenciação
Propriedades potenciação
wagneregiselly10
 

Mais procurados (20)

Resumo1
Resumo1Resumo1
Resumo1
 
Lista 1 - FUV - Resolução
Lista 1 - FUV - ResoluçãoLista 1 - FUV - Resolução
Lista 1 - FUV - Resolução
 
Função afim
Função afimFunção afim
Função afim
 
Tr pascal binnewton-teoria-e-exerc
Tr pascal binnewton-teoria-e-exercTr pascal binnewton-teoria-e-exerc
Tr pascal binnewton-teoria-e-exerc
 
Matematica 4 exercicios gabarito 04
Matematica 4 exercicios gabarito 04Matematica 4 exercicios gabarito 04
Matematica 4 exercicios gabarito 04
 
Conceitos fundamentais da álgebra
Conceitos fundamentais da álgebraConceitos fundamentais da álgebra
Conceitos fundamentais da álgebra
 
Análise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de RecorrênciasAnálise de Algoritmos - Solução de Recorrências
Análise de Algoritmos - Solução de Recorrências
 
Matemática - Aula 5
Matemática - Aula 5Matemática - Aula 5
Matemática - Aula 5
 
Funções
FunçõesFunções
Funções
 
1 = 0,999...
1 = 0,999...1 = 0,999...
1 = 0,999...
 
02 potenciao e radiciao
02 potenciao e radiciao02 potenciao e radiciao
02 potenciao e radiciao
 
Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - Recursividade
 
Demonstração do binômio de Newton
Demonstração do binômio de NewtonDemonstração do binômio de Newton
Demonstração do binômio de Newton
 
Propriedades potenciação
Propriedades  potenciaçãoPropriedades  potenciação
Propriedades potenciação
 
1+1=2
1+1=21+1=2
1+1=2
 
Equações algébricas
Equações algébricas   Equações algébricas
Equações algébricas
 
Funcoes Exponenciais
Funcoes ExponenciaisFuncoes Exponenciais
Funcoes Exponenciais
 
CfSd 2016 matematica - 2 v1
CfSd 2016   matematica - 2 v1CfSd 2016   matematica - 2 v1
CfSd 2016 matematica - 2 v1
 
P3 calculo i_ (3)
P3 calculo i_ (3)P3 calculo i_ (3)
P3 calculo i_ (3)
 
Função logarítmica
Função logarítmicaFunção logarítmica
Função logarítmica
 

Semelhante a Linguagem C - Recursão [exercícios]

12 algoritmos e funcoes recursivas
12   algoritmos e funcoes recursivas12   algoritmos e funcoes recursivas
12 algoritmos e funcoes recursivas
Ricardo Bolanho
 
19 algoritmos de enumeracao
19   algoritmos de enumeracao19   algoritmos de enumeracao
19 algoritmos de enumeracao
Ricardo Bolanho
 
As equações do segundo grau são abordadas na história da matemática desde a é...
As equações do segundo grau são abordadas na história da matemática desde a é...As equações do segundo grau são abordadas na história da matemática desde a é...
As equações do segundo grau são abordadas na história da matemática desde a é...
leosilveira
 
Ger numaleat(1)
Ger numaleat(1)Ger numaleat(1)
Ger numaleat(1)
Iago Lira
 
Redes neurais com matlab
Redes neurais com matlabRedes neurais com matlab
Redes neurais com matlab
Renato Vicente
 

Semelhante a Linguagem C - Recursão [exercícios] (20)

Relações de recorrência
Relações de recorrênciaRelações de recorrência
Relações de recorrência
 
Lista funcões e recursividade
Lista funcões e recursividadeLista funcões e recursividade
Lista funcões e recursividade
 
Matemática 8ª classe lição 4
Matemática 8ª classe lição 4 Matemática 8ª classe lição 4
Matemática 8ª classe lição 4
 
12 algoritmos e funcoes recursivas
12   algoritmos e funcoes recursivas12   algoritmos e funcoes recursivas
12 algoritmos e funcoes recursivas
 
Teoria do números - Classificações especiais
Teoria do números - Classificações especiaisTeoria do números - Classificações especiais
Teoria do números - Classificações especiais
 
19 algoritmos de enumeracao
19   algoritmos de enumeracao19   algoritmos de enumeracao
19 algoritmos de enumeracao
 
As equações do segundo grau são abordadas na história da matemática desde a é...
As equações do segundo grau são abordadas na história da matemática desde a é...As equações do segundo grau são abordadas na história da matemática desde a é...
As equações do segundo grau são abordadas na história da matemática desde a é...
 
Formula Luderiana Universal
Formula Luderiana UniversalFormula Luderiana Universal
Formula Luderiana Universal
 
Aula7e8
Aula7e8Aula7e8
Aula7e8
 
Teste Derivadas
Teste DerivadasTeste Derivadas
Teste Derivadas
 
Gabarito pa
Gabarito paGabarito pa
Gabarito pa
 
Ger numaleat(1)
Ger numaleat(1)Ger numaleat(1)
Ger numaleat(1)
 
Intro teoria dos números cap2
Intro teoria dos  números cap2Intro teoria dos  números cap2
Intro teoria dos números cap2
 
Binomio de newton
Binomio de newtonBinomio de newton
Binomio de newton
 
Binômio de newton e triângulo de pascal
Binômio de newton e triângulo de pascalBinômio de newton e triângulo de pascal
Binômio de newton e triângulo de pascal
 
Redes neurais com matlab
Redes neurais com matlabRedes neurais com matlab
Redes neurais com matlab
 
Booklet reais
Booklet reaisBooklet reais
Booklet reais
 
Lista de exercícios 1
Lista de exercícios 1Lista de exercícios 1
Lista de exercícios 1
 
Revisao 2 2019.pdf
Revisao 2 2019.pdfRevisao 2 2019.pdf
Revisao 2 2019.pdf
 
Formula luderiana racional para extracao de raiz quadrada (completo)
Formula luderiana racional para extracao de raiz quadrada (completo)Formula luderiana racional para extracao de raiz quadrada (completo)
Formula luderiana racional para extracao de raiz quadrada (completo)
 

Mais de Matheus Alves

Mais de Matheus Alves (20)

Estudo bíblico - Feridas na alma
Estudo bíblico - Feridas na almaEstudo bíblico - Feridas na alma
Estudo bíblico - Feridas na alma
 
Inglês - Cronograma de estudos e gramática
Inglês - Cronograma de estudos e gramáticaInglês - Cronograma de estudos e gramática
Inglês - Cronograma de estudos e gramática
 
Sustentabilidade - resumo (Pablo Pessoa)
Sustentabilidade - resumo (Pablo Pessoa)Sustentabilidade - resumo (Pablo Pessoa)
Sustentabilidade - resumo (Pablo Pessoa)
 
Links úteis para estudar a bíblia
Links úteis para estudar a bíbliaLinks úteis para estudar a bíblia
Links úteis para estudar a bíblia
 
Técnicas assistivas - seminário(diabetes)
Técnicas assistivas - seminário(diabetes)Técnicas assistivas - seminário(diabetes)
Técnicas assistivas - seminário(diabetes)
 
Apostila de Cálculo (UFRPE) - Volume 2
Apostila de Cálculo (UFRPE) - Volume 2Apostila de Cálculo (UFRPE) - Volume 2
Apostila de Cálculo (UFRPE) - Volume 2
 
Apostila de Cálculo (UFRPE) - Volume 3
Apostila de Cálculo (UFRPE) - Volume 3Apostila de Cálculo (UFRPE) - Volume 3
Apostila de Cálculo (UFRPE) - Volume 3
 
Resumo - CAP1 - As regras do método sociológico[Durkheim]
Resumo - CAP1 - As regras do método sociológico[Durkheim]Resumo - CAP1 - As regras do método sociológico[Durkheim]
Resumo - CAP1 - As regras do método sociológico[Durkheim]
 
Linguagem C - Arquivos [exercícios]
Linguagem C - Arquivos [exercícios]Linguagem C - Arquivos [exercícios]
Linguagem C - Arquivos [exercícios]
 
Linguagem C - Alocação Dinâmica [exercícios]
Linguagem C - Alocação Dinâmica [exercícios]Linguagem C - Alocação Dinâmica [exercícios]
Linguagem C - Alocação Dinâmica [exercícios]
 
Linguagem C - Ponteiros [exercícios]
Linguagem C - Ponteiros [exercícios]Linguagem C - Ponteiros [exercícios]
Linguagem C - Ponteiros [exercícios]
 
Linguagem C - Structs [exercícios]
Linguagem C - Structs [exercícios]Linguagem C - Structs [exercícios]
Linguagem C - Structs [exercícios]
 
Linguagem C - Strings [exercícios]
Linguagem C - Strings [exercícios]Linguagem C - Strings [exercícios]
Linguagem C - Strings [exercícios]
 
Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]
 
Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]
 
Diferença entre computadores analógicos e digitais
Diferença entre computadores analógicos e digitaisDiferença entre computadores analógicos e digitais
Diferença entre computadores analógicos e digitais
 
Silogismo e subjetividade - breve definição
Silogismo e subjetividade - breve definiçãoSilogismo e subjetividade - breve definição
Silogismo e subjetividade - breve definição
 
Lista de exercícios - vetores(Alguns gabaritos estão errados)
Lista de exercícios -  vetores(Alguns gabaritos estão errados)Lista de exercícios -  vetores(Alguns gabaritos estão errados)
Lista de exercícios - vetores(Alguns gabaritos estão errados)
 
Matemática elementar volume 7 (Geometria Analítica)
Matemática elementar volume 7 (Geometria Analítica)Matemática elementar volume 7 (Geometria Analítica)
Matemática elementar volume 7 (Geometria Analítica)
 
Síntese - O mito da caverna
Síntese - O mito da cavernaSíntese - O mito da caverna
Síntese - O mito da caverna
 

Último

manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdfmanual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
rarakey779
 
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
ESCRIBA DE CRISTO
 
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Pastor Robson Colaço
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
edjailmax
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
rarakey779
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
rarakey779
 
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
rarakey779
 

Último (20)

manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdfmanual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
 
ATPCG 27.05 - Recomposição de aprendizagem.pptx
ATPCG 27.05 - Recomposição de aprendizagem.pptxATPCG 27.05 - Recomposição de aprendizagem.pptx
ATPCG 27.05 - Recomposição de aprendizagem.pptx
 
Poema - Reciclar é preciso
Poema            -        Reciclar é precisoPoema            -        Reciclar é preciso
Poema - Reciclar é preciso
 
Apresentação sobre as etapas do desenvolvimento infantil
Apresentação sobre as etapas do desenvolvimento infantilApresentação sobre as etapas do desenvolvimento infantil
Apresentação sobre as etapas do desenvolvimento infantil
 
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
 
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
 
Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40
 
hereditariedade é variabilidade genetic
hereditariedade é variabilidade  genetichereditariedade é variabilidade  genetic
hereditariedade é variabilidade genetic
 
Evangelismo e Missões Contemporânea Cristã.pdf
Evangelismo e Missões Contemporânea Cristã.pdfEvangelismo e Missões Contemporânea Cristã.pdf
Evangelismo e Missões Contemporânea Cristã.pdf
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
 
22-modernismo-5-prosa-de-45.pptxrpnsaaaa
22-modernismo-5-prosa-de-45.pptxrpnsaaaa22-modernismo-5-prosa-de-45.pptxrpnsaaaa
22-modernismo-5-prosa-de-45.pptxrpnsaaaa
 
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docxAtividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
 
Atividade com a música Xote da Alegria - Falamansa
Atividade com a música Xote  da  Alegria    -   FalamansaAtividade com a música Xote  da  Alegria    -   Falamansa
Atividade com a música Xote da Alegria - Falamansa
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
 
manual-de-direito-civil-flacc81vio-tartuce-2015-11.pdf
manual-de-direito-civil-flacc81vio-tartuce-2015-11.pdfmanual-de-direito-civil-flacc81vio-tartuce-2015-11.pdf
manual-de-direito-civil-flacc81vio-tartuce-2015-11.pdf
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
 
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
 
América Latina: Da Independência à Consolidação dos Estados Nacionais
América Latina: Da Independência à Consolidação dos Estados NacionaisAmérica Latina: Da Independência à Consolidação dos Estados Nacionais
América Latina: Da Independência à Consolidação dos Estados Nacionais
 

Linguagem C - Recursão [exercícios]

  • 1. Universidade Federal de Uberlˆandia - UFU Faculdade de Computac¸ ˜ao - FACOM Lista de exerc´ıcios de programac¸ ˜ao em linguagem C Exerc´ıcios: Recurs˜ao 1. Crie uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e calcule o somat´orio dos n´umeros de 1 a N. 2. Fac¸a uma func¸ ˜ao recursiva que calcule e retorne o fatorial de um n´umero inteiro N. 3. Escreva uma func¸ ˜ao recursiva que calcule a soma dos primeiros n cubos: S(n) = 13 + 23 + ... + n3 4. Crie uma func¸ ˜ao recursiva que receba dois inteiros positivos k e n e calcule kn. 5. Fac¸a uma func¸ ˜ao recursiva que calcule e retorne o N-´esimo termo da sequˆencia Fibo- nacci. Alguns n´umeros desta sequˆencia s˜ao: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89... 6. A multiplicac¸ ˜ao de dois n´umeros inteiros pode ser feita atrav´es de somas sucessivas. Proponha um algoritmo recursivo Multip Rec(n1,n2) que calcule a multiplicac¸ ˜ao de dois inteiros. 7. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e imprima todos os n´umeros naturais de 0 at´e N em ordem crescente. 8. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e imprima todos os n´umeros naturais de 0 at´e N em ordem decrescente. 9. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo par N e imprima todos os n´umeros pares de 0 at´e N em ordem crescente. 10. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo par N e imprima todos os n´umeros pares de 0 at´e N em ordem decrescente. 11. Escreva uma func¸ ˜ao recursiva que exibe todos os elementos em um array de inteiros, separados por espac¸o. 12. Crie um programa que contenha uma func¸ ˜ao recursiva para encontrar o menor elemento em um vetor. 13. Escreva uma func¸ ˜ao recursiva SomaSerie(i,j,k). Esta func¸ ˜ao devolve a soma da s´erie de valores do intervalo [i,j], com incremento k. 14. Escreva uma func¸ ˜ao recursiva ImprimeSerie(i,j,k). Esta func¸ ˜ao imprime na tela a s´erie de valores do intervalo [i,j], com incremento k. 15. Fac¸a uma func¸ ˜ao recursiva que calcule o valor da s´erie S descrita a seguir para um valor n > 0 a ser fornecido como parˆametro para a mesma. S = 2 + 5 2 + 10 3 + ... + 1 + n2 n 1
  • 2. 16. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo impar N e retorne o fatorial duplo desse n´umero. O fatorial duplo ´e definido como o produto de todos os n´umeros naturais ´ımpares de 1 at´e algum n´umero natural ´ımpar N. Assim, o fatorial duplo de 5 ´e 5!! = 1 ∗ 3 ∗ 5 = 15 17. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o fatorial qu´adruplo desse n´umero. O fatorial qu´adruplo de um n´umero N ´e dado por: (2n)! n! 18. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o super- fatorial desse n´umero. O superfatorial de um n´umero N ´e definida pelo produto dos N primeiros fatoriais de N. Assim, o superfatorial de 4 ´e sf(4) = 1! ∗ 2! ∗ 3! ∗ 4! = 288 19. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o hiperfa- torial desse n´umero. O hiperfatorial de um n´umero N, escrito H(n), ´e definido por H(n) = n k=1 kk = 11 ∗ 22 ∗ 33 ...(n − 1)n−1 ∗ nn 20. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero inteiro positivo N e retorne o fatorial exponencial desse n´umero. Um fatorial exponencial ´e um inteiro positivo N elevado `a potˆencia de N-1, que por sua vez ´e elevado `a potˆencia de N-2 e assim em diante. Ou seja, n(n−1)(n−2)... 21. Escreva uma func¸ ˜ao recursiva que calcule a sequˆencia dada por: F(1) = 1 F(2) = 2 F(n) = 2 * F(n-1) + 3 * F(n-2). 22. Uma sequˆencia de Fibonacci generalizada, de f0 a f1 ´e definida como fibg(f0, f1, 0), fibg(f0, f1, 1), fibg(f0, f1, 2), ..., onde: fibg(f0, f1, 0) = f0 fibg(f0, f1, 1) = f1 fibg(f0, f1, n) = fibg(f0, f1, n-1) + fibg(f0, f1, n-2), se n > 1. 23. Fac¸a uma func¸ ˜ao recursiva que permita somar os elementos de um vetor de inteiros. 24. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da sequˆencia de tribonacci. Os n´umeros tribonacci s˜ao definidos pela seguinte recurs˜ao f(n) = 0 se n = 0 f(n) = 0 se n = 1 f(n) = 1 se n = 2 f(n) = f(n-1)+f(n-2)+f(n-3) se n > 3 2
  • 3. 25. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da sequˆencia de tetranacci. Os n´umeros tetranacci iniciam com quatro termos pr´e-determinados e a partir da´ı todos os demais n´umeros s˜ao obtidos pela soma dos quatro n´umeros ante- riores. Os primeiros n´umeros tetranacci s˜ao: 0, 0, 0, 1, 1, 2, 4, 8, 15, 29, 56, 108, 208... 26. Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne o N-´esimo termo da sequˆencia de Padovan. A sequˆencia de Padovan ´e uma sequˆencia de naturais P(n) de- finida pelos valores iniciais P(0) = P(1) = p(2) = 1 e a seguinte relac¸ ˜ao recursiva P(n) = P(n - 2) + P(n - 3) se n > 3 Alguns valores da sequˆencia s˜ao: 1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28... 27. Implemente a func¸ ˜ao h definida recursivamente por: h(m,n) = m+1 ,se n = 1 h(m,n) = n+1 ,se m = 1 h(m,n) = h(m,n-1)+h(m-1,n) ,se m>1,n>1 28. Fac¸a uma func¸ ˜ao recursiva para computar a func¸ ˜ao de Ackerman. A func¸ ˜ao de Acherman ´e definida recursivamente nos n´umeros n˜ao negativos como segue: A(m,n) = n+1 se m = 0 A(m,n) = A(m-1,1) se m > 0 e n = 0 A(m,n) = A(m-1,A(m,n-1)) se m > 0 e n > 0 29. Fac¸a uma func¸ ˜ao recursiva para calcular os n´umeros de Pell. Os n´umeros de Pell s˜ao definidos pela seguinte recurs˜ao p(n) = 0 se n = 0 p(n) = 1 se n = 1 p(n) = 2p(n-1)+ p(n-2) se n > 1 30. Fac¸a uma func¸ ˜ao recursiva para calcular os n´umeros de Catalan. Os n´umeros de Cata- lan s˜ao definidos pela seguinte recurs˜ao C(n) = 1 se n = 0 C(n) = 2(2n−1) n+1 C(n − 1) se n > 0 Alguns n´umeros desta sequˆencia s˜ao: 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786... 31. Uma palavra de Fibonacci ´e definida por f(n) = b se n = 0 f(n) = a se n = 1 f(n) = f(n-1)+f(n-2) se n > 1 3
  • 4. Aqui o s´ımbolo “+” denota a concatenac¸ ˜ao de duas strings. Esta sequˆencia inicia com as seguintes palavras: b, a, ab, aba, abaab, abaababa, abaababaabaab, ... Fac¸a uma func¸ ˜ao recursiva que receba um n´umero N e retorne a N-´esima palavra de Fibonacci. 32. Dado um n´umero n na base decimal, escreva uma func¸ ˜ao recursiva que converte este n´umero para bin´ario. 33. Crie um programa que receba um vetor de n´umeros reais com 100 elementos. Escreva uma func¸ ˜ao recursiva que inverta a ordem dos elementos presentes no vetor. 34. Fac¸a uma func¸ ˜ao recursiva que permita inverter um n´umero inteiro N. Ex: 123 - 321 35. Escreva uma func¸ ˜ao recursiva que determine quantas vezes um d´ıgito K ocorre em um n´umero natural N. Por exemplo, o d´ıgito 2 ocorre 3 vezes em 762021192. 36. O m´aximo divisor comum dos inteiros x e y ´e o maior inteiro que ´e divis´ıvel por x e y. Escreva uma func¸ ˜ao recursiva mdc que retorna o m´aximo divisor comum de x e y. O mdc de x e y ´e definido como segue: se y ´e igual a 0, ent˜ao mdc(x,y) ´e x; caso contr´ario, mdc(x,y) ´e mdc (y, x%y), onde % ´e o operador resto. 37. Escreva uma func¸ ˜ao recursiva que permita fazer a multiplicac¸ ˜ao `a russa de 2 entradas. A Multiplicac¸ ˜ao `a russa consiste em: (a) Escrever os n´umeros A e B, que se deseja multiplicar na parte superior das colunas. (b) Dividir A por 2, sucessivamente, ignorando o resto at´e chegar `a unidade, escrever os resultados da coluna A. (c) Multiplicar B por 2 tantas vezes quantas se haja dividido A por 2, escrever os resul- tados sucessivos na coluna B. (d) Somar todos os n´umeros da coluna B que estejam ao lado de um n´umero ´ımpar da coluna A. Exemplo: 27 * 82 A B Parcelas 27 82 82 13 164 164 6 328 - 3 656 656 1 1312 1312 Soma = 2214 4