// Chap 5, p 207 #include void Towers(int Count, char Source, char Dest, char Spare) { if (Count == 1) { cout << "Move disk from pole " << Source << " to pole " << Dest << endl; } else { Towers(Count-1, Source, Spare, Dest); // Point X Towers(1, Source, Dest, Spare); // Point Y Towers(Count-1, Spare, Dest, Source); // Point Z } // end if } // end Towers //******SAMPLE MAIN PROGRAM****** main() { int Rings = 3; cout << "\nTowers of Hanoi solution with " << Rings << " Rings:\n"; Towers(Rings, 'A', 'B', 'C'); return 0; }