SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
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

SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
NarlaAquino
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 

Último (20)

TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
 
Camadas da terra -Litosfera conteúdo 6º ano
Camadas da terra -Litosfera  conteúdo 6º anoCamadas da terra -Litosfera  conteúdo 6º ano
Camadas da terra -Litosfera conteúdo 6º ano
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdfProjeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 

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