LISTA DE EXERCÍCIOS ESTRUTURA DE DADOS PROFA. SUSANA MARRERO IGLESIAS RECURSIVIDADE 1. Escreva as soluções recursivas e iterativas dos problemas discutidos em sala de aula, (fatorial, fibonacci, busca binária). Escreva e teste a solução recursiva das torres de Hanói. Intente resolver o problema usando A, B e C para as estacas. 2. Escreva um programa iterativo para avaliar a*b usando a adição onde a e b são inteiros não negativos. Escreva o programa recursivo para resolver esse problema 3. Escreva uma definição recursiva de a+b onde a e b são números inteiros não negativos, em termos da função sucessora definida como: int func(int n) { if(n == 0) return 0; return(n + func(n-1)); }/*fim de func*/ 4. Conte o número de adições necessárias para computar fib(n) para 0<=n<=10 por médio dos métodos recursivo e iterativo. Existe algum tipo de padrão? 5. Determine o que a seguinte função recursiva em C calcula. Escreva uma função iterativa para atingir o mesmo objetivo. int func(int n) { if(n == 0) return 0; return(n + func(n-1)); }/*fim de func*/ 6. A expressão em C, m%n, resulta o resto de m ao dividir por n. Defina o máximo divisor comum (MDC) de dois inteiros x e y por mdc(x, y) = y mdc(x, y) = mdc (y, x) mdc(x, y) = mdc(y, x % y) se (y <= x && x % y == 0) se (x < y) caso contrário Escreva uma função recursiva e uma iterativa para calcular mdc(x, y).