Module: sub-rotinas. recursão


Problem

2/12

Recursão. Simulação de ciclo

Theory Click to read/hide

Descobrimos que a recursão é a execução repetida de comandos contidos em uma sub-rotina. E isso, por sua vez, é semelhante ao trabalho do ciclo. Existem linguagens de programação nas quais a construção do loop está ausente, por exemplo, Prolog. 
Vamos tentar simular o funcionamento do loop para
O loop for contém uma variável de contador de passos. Em uma sub-rotina recursiva, tal variável pode ser passada como um parâmetro.
// procedimento LoopImitation() com dois parâmetros // primeiro parâmetro – contador de passos, segundo parâmetro – número total de passos static void LoopImitation(int i, int n) { Console.WriteLine("Olá N" + i); // declaração a ser repetida para qualquer valor i if (i < n) // até que o contador de loop seja igual a n, { LoopImitation(i+1, n); // chamando um novo procedimento de instância, com o parâmetro i+1 (vá para o próximo valor i) } }

Problem

Examine o programa abaixo e configure uma chamada de procedimento no programa principal com parâmetros i = 1 , n = 10.