Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ricardo99

recursividade

Recommended Posts

Eu fiz uma prova que teria de usar recursidade para imprimir uma serie de chars na forma de quadrado ou de triangulo

so que teria de usar um 'for' dentro da função recursiva isso é permitido ? a unica coisa que é obrigatorio na função recursiva seria ela char ela mesma? se for teriam como postar alguns exemplos de funções recursivas usando diversas formas variadas (vetores, chars, string, matriz) ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
so que teria de usar um 'for' dentro da função recursiva isso é permitido ?

 

Sim.

 

 

a unica coisa que é obrigatorio na função recursiva seria ela char ela mesma?

 

Sim, essa é a definição de uma função recursiva. Uma função recursiva chama ela mesma.

 

 

se for teriam como postar alguns exemplos de funções recursivas usando diversas formas variadas (vetores, chars, string, matriz) ?

 

Para ter uma função recursiva, você tem que ter alguma condição de saída dela, senão você criaria algo parecido com um loop infinito.

 

Mas como seu uso é pequeno em C, não me veio nada a cabeça para te mostrar agora, dê uma sugestão =D

 

O básico:

 

#include <stdio.h>

int recursiva(int i);

int main(void)
{
   int i = 0;

   i = recursiva(i);

   printf("Voltou da recursiva! i = %d", i);
}

int recursiva(int i)
{
   // Se o valor de i incrementado não é 500.000, ou seja, que a função foi não chamada 500.00 vezes,
   // chama ela denovo para incrementar mais uma vez.
   if(++i < 500000)
      i = recursiva(i);

   // Quando a primeira recursiva chegar com (++i == 500000), as funções vão começar a retornar,
   // e como temos o i na variável, é só retornar ele que ele vai ter 500000.
   return i;
}

 

 

 

Abraços :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.