Рекурсията в живота

Обяснете чрез рекурсия как:

  1. Отивате от вас до площада.
  2. Изхарчвате всичките си пари.
  3. Изяждате цяло пакетче бисквити :-)
  4. Преглеждате всички непрегледани публикации във Фейсбук.
  5. Решавате чрез рекурсия всички подзадачи в тази задача.

Всяко решение трябва да съдържа прости стъпки, условие за дъно на рекурсията и рекурсивно извикване. Давам пример за рекурсивно решение на пресмятането на броят на цифрите на положително число:

  1. Ако числото е по-малко от 10, броят на цифрите му е равен на 1
  2. В противен случай, броят е равен на 1 + броят на останалите цифри на числото без последната (т.е. на броят на цифрите на числото, делено на 10).

Предложете и ваши задачи, демонстриращи използване на рекурсия в живота.

Публикувано в 12в с етикети . Постоянна връзка.

4 коментара по Рекурсията в живота

  1. Violeta каза:
     #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    void  paketche_biskviti (int biskviti)
    {  
       if (biskviti>0) 
         {
         cout<<" Izqdoh edna biskvitka :) ostanaha "<< biskviti-1<<endl;
         paketche_biskviti(biskviti-1);
         } 
       else cout << " Paketcheto svarshi :( "<<endl;
    }
    int main(int argc, char** argv) {
    int biskviti;	
      cout<< "Vavedi broq na biskvitkite "<<endl;
      cin >>biskviti; 
        paketche_biskviti (biskviti);
    
    	return 0;
    } 
  2. Violeta каза:
     #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    void  publikacii (int nepregledani)
    {  
       if (nepregledani>0) 
         {
         cout<<" Imam oshte ne pregledani publikacii v FB! Ostavat mi "<< nepregledani-1<<endl;
         publikacii(nepregledani-1);
         } 
       else cout << "Veche nqmam ne pregledani publikacii! SKUKAaaa ;( "<<endl;
    }
    int main(int argc, char** argv) {
    int nepregledani ;	
      cout<< "Vavedi broq na ne pregledanite ot vas publikacii "<<endl;
      cin >>nepregledani; 
        publikacii (nepregledani);
    
    	return 0;
    } 

Вашият коментар