Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Prof. Ricardo M. Marcacini LISTA DE EXERCÍCIOS 3 Algoritmos Recursivos Exercício 1) Escreva um algoritmo recursivo para calcular a n-ésima potência de um número x, denotada por xn, observando a seguinte a definição: Exercício 2) Escreva um algoritmo recursivo que calcula o resultado da multiplicação de números naturais conforme a seguinte definição: Exercício 3) Escreva um algoritmo recebe um vetor V com n números inteiros, n > 0, e que execute as seguintes operações de forma recursiva: A soma dos números do vetor O maior elemento do vetor Exercício 4) Escreva um algoritmo recursivo para calcular o n-ésimo termo da série de Fibonacci, conforme a seguinte definição: Exercício 5) O Mínimo Múltiplo Comum (M.M.C.) de dois números X e Y é definido como o menor número inteiro positivo que é múltiplo comum a X e Y. Escreva um algoritmo recursivo para calcular o MMC conforme a seguinte definição (quando não for possível computar o MMC, então retornar 0): Exercício 6) Escreva uma versão recursiva para o seguinte algoritmo: Exercício 7) Escreva um algoritmo para ler um vetor de inteiros de tamanho n e escreva um método recursivo para busca sequencial de um inteiro x. Os valores de n e x devem ser definidos pelo usuário. O resultado da busca deve ser o índice do vetor que contém o valor x. Se x não for encontrado, então retornar -1. Exercício 8) O problema 3n+1, também chamado de conjectura de Collatz, define uma sequência de números que, a partir de um número natural inicial, estabelece os seguintes critérios: – se o número for par então seu sucessor será sua metade: n/2 – se o número for ímpar então seu sucessor será 3n+1 Uma curiosidade (ainda sem explicação formal) é que a sequência de números obtida (aparentemente) sempre termina em 1. Escreva um algoritmo recursivo para o problema 3n+1. O valor de n deve ser definido pelo usuário. Exercício 9) Considere o labirinto abaixo. As células azuis representam regiões em que o gatinho pode passear. As células vermelhas são venenosas. Considere que o gatinho só pode andar para esquerda, direita, cima e baixo. Não é permitido pular células ou andar nas diagonais. Escreva um algoritmo recursivo que imprima na tela o caminho que o gato deve andar para levá-lo de (0,0) até (9,9). DICA: represente o labirinto por uma matriz de 0's e 1's, em que 0's são células vermelhas e 1's são células azuis. Exercício 10) Utilize o código de Fractal disponibilizado pelo professor (no site da disciplina) para gerar (de formar similar) a seguinte imagem: DICA: O algoritmo recursivo deve desenhar um quadrado grande inicialmente e, recursivamente, desenhar quadrados menores até um critério de parada. Com o código disponibilizado no site da disciplina, o maior quadrado que pode ser desenhado tem lado r=500 e deve ser posicionado na coordenada x=0 e y=0.