Deklarasi
n : integer
asal : char
bantu : char
tujuan : char
Deskripsi
read (n)
asal<-"Menara Pertama" bantu<-"Menara Kedua" tujuan<-"Menara Ketiga" Pindahkan ( n, asal, bantu, tujuan ) if n>0
Pindahkan ( n-1, asal, bantu, tujuan )
write ( " Pindahkan piringan ",n," dari ",asal," ke ",tujuan )
Pindahkan ( n-1, bantu, asal, tujuan )
endif
// Program C++ Menara Hanoi dengan rekursi
#include
using namespace std;
void pindahkan( int n, char *asal , char *bantu , char *tujuan )
{
if( n>0 )
{
pindahkan( n-1, asal , tujuan , bantu );
// pindahkan piringan n-1 dari asal ke bantu
cout << "Pindahkan piringan " << n << " dari " << asal << " ke " << tujuan << endl;
// pindahkan piringan dari asal ke tujuan
pindahkan( n-1, bantu , asal, tujuan );
// pindahkan piringan n-1 dari bantu ke tujuan
}
}
int main()
{
cout << "Program C++ untuk menyelesaikan masalah Menara Hanoi" << endl;
cout << "Masukkan Jumlah Piringan : ";
int n;
cin >> n;
pindahkan ( n , "Menara Asal" , "Menara Bantu" , "Menara Tujuan" );
return 0;
}
Tidak ada komentar:
Posting Komentar