Модуль: C#. Подпрограммы. Рекурсия


2. Рекурсия. Имитация работы цикла

☰ Теория

Мы выяснили, что рекурсия - это повторное выполнение содержащихся команд в подпрограмме. А это в свою очередь аналогично работе цикла. Существуют языки программирования, в которых конструкция цикла отсутствует вовсе, например, Пролог. 
Попробуем сымитировать работу цикла for
Цикл for содержит переменную-счетчик шагов. В рекурсивной подпрограмме такую переменную можно передавать в качестве параметра.

// процедура LoopImitation() с двумя параметрами
// первый параметр – счетчик шагов, второй параметр – общее количество шагов
static void LoopImitation(int i, int n) 
{            	
  Console.WriteLine("Hello N " + i); // оператор, который необходимо повторить при любом значении i    	
  if (i < n)                         // пока счетчик цикла не станет равным значению n,   
  {                                  
    LoopImitation(i+1, n);           // вызываем новый экземпляр процедуры, с параметром i+1 (переход к следующему значению i)
  }      
}      

Изучите программу, приведенную ниже и оформите в основной программе вызов процедуры с параметрами i = 1, n = 10.


Вставьте недостающие фрагменты кода
C#
1
using System;  
2
class Program  
3
{   
4
    static void LoopImitation(int i, int n)  
5
    {  
6
        Console.WriteLine("Hello N " + i); 	  
7
        if (i < n)                           
8
        {  
9
            LoopImitation(i + 1, n);          
10
        }  
11
    }  
12
    static void Main()  
13
    {  
14
15
    }  
16
}