[C++] - (递归)汉诺塔

 注:来源于教科书

 

#include  " iostream.h "

void  main(){
    
int  n;
    
void  hanoi( int  n, char  a, char  b, char  c);
    cout 
<<   " Please input the number of disks to be moved: "   <<  endl;
    cin 
>>  n;
    hanoi(n,
' a ' , ' b ' , ' c ' );
}

void  hanoi( int  n, char  a, char  b, char  c){
    
if (n > 0 ){
        hanoi(n
- 1 ,a,c,b);
        cout 
<<   " \nMove disc  "   <<  n  <<   "  from pile  "   <<  a  <<   "  to  "   <<  b;
        hanoi(n
- 1 ,c,b,a);
    }
}

 

你可能感兴趣的:(C++)