Advertisement
wintest

Hanoi tower

Nov 6th, 2017
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include<iostream>
  2. #include<clocale>
  3. using namespace std;
  4.  
  5.     void ToH(int dskToMv, int cLocation, int tmpLocation, int fLocation)
  6.     {
  7.         if (dskToMv != 0)
  8.         {
  9.             cout << "Днес е щастливият ви ден, викаме рекурсия за диск номер " << dskToMv - 1 << " който трябва да отиде от кегла " << cLocation << " до кегла " << tmpLocation << " през кегла " << fLocation << endl;
  10.             cout << endl;
  11.             ToH(dskToMv - 1, cLocation, fLocation, tmpLocation);
  12.             cout <<"Местя диск "<< dskToMv<<" от кегла "<< cLocation << " към кегла " << fLocation <<" with the help of some black magic."<< endl;
  13.             cout << "Обратен ход на рекурсията!" << endl;
  14.             cout << "Днес е щастливият ви ден, викаме рекурсия за диск номер " << dskToMv - 1 << " който трябва да отиде от кегла " << tmpLocation << " до кегла " << fLocation << " през кегла " << cLocation << endl;
  15.             cout << endl;
  16.             ToH(dskToMv - 1, tmpLocation, cLocation, fLocation);
  17.         }
  18.         cout << "Дъно на рекурсията!" << endl;
  19.     }
  20.  
  21.     int main()
  22.     {
  23.         setlocale(LC_ALL, "Bulgarian");
  24.         int x;
  25.         cout << "Enter number of disks: ";
  26.         cin >> x;
  27.         ToH(x, 1, 2, 3);
  28.         return 0;
  29.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement