Recursividade

318 palavras 2 páginas
Escreva uma função recursiva que retorne x elevado a potência y.
Int potencia (int x, int y);

int potencia(int x,int y){ if (y==0) return 1; else return x * potencia(x,y-1);
}

main (){ int x, y, z; printf ("Digite a base: "); scanf ("%d", &x); printf ("Digite o expoente: "); scanf ("%d", &y); z=potencia (x,y); printf ("\n%d^%d = %d\n\n", x, y, z); system ("PAUSE"); }

Escreva uma função recursiva que retorne a soma da série de valores do intervalo [i,j], com incremento k.
OBS: i e j sempre devem ser somados na serie. Int soma_serie (int i, int j, int k);
Exemplo: se i = 2, j = 10 e k = 2, a soma 2 + 4 + 6 + 8 + 10 = 30.

int somaSerie(int i, int j, int k){ if(i==j) return i; else if(i < j) return (i + somaSerie(i + k, j, k)); else return (j + somaSerie(i, j + k, k));
}

main (){ int i, j, k, l; printf ("Insira i: "); scanf ("%d", &i); printf ("Insira j: "); scanf ("%d", &j); printf ("Insira k: "); scanf ("%d", &k); l=somaSerie(i, j, k); printf ("\nResultado = %d\n\n", l); system ("PAUSE"); }

Considere a função abaixo: int X (int a) { if ( a 0 T(n) = d p/ n = 0 T(n) = O(n)

c. Escreva uma função não-recursiva que resolve o mesmo problema. Qual é a ordem de complexidade da sua função? Explique.
Resposta: Função segue abaixo. Esta função é O(n), pois, só é exercida a função do for o número de vezes X.

d. Qual implementação é mais eficiente ? Justifique.
Resposta: As duas são igualmente eficientes, porém a não-recursiva é mais simples e de fácil implementação.

*/

main (){ int x, y=0, a; printf ("Digite valor X: "); scanf ("%d", &x); for (a=x; a>0; a--) y=y+a; printf ("\nResultado: %d\n\n", y); system ("PAUSE"); }

Relacionados

  • Recursividade
    2088 palavras | 9 páginas
  • Recursividade
    577 palavras | 3 páginas
  • ....... Recursividade
    936 palavras | 4 páginas
  • Recursividade
    384 palavras | 2 páginas
  • Recursividade
    1193 palavras | 5 páginas
  • Recursividade
    311 palavras | 2 páginas
  • Recursividade
    463 palavras | 2 páginas
  • RECURSIVIDADE
    604 palavras | 3 páginas
  • recursividade
    1230 palavras | 5 páginas
  • Recursividade
    526 palavras | 3 páginas