Tower of Hanoi in Java

IMPLEMENTASI TOWER OF HANOI




Menara hanoi adalah permainan  memindahkan blok berbentuk lingkaran yang membentuk menara, memindahkan ke lokasi lain, namun blok lingkaran besar selalu harus berada dibawah blok lingkaran kecil. 

Permainan ini menjadi sangat populer, karena mengajarkan beberapa keteraturan (algoritma) yang harus dicermati untuk memindahkan blok-blok tersebut. Walaupun algoritma tersebut hanya bisa dicerna oleh orang dewasa, namun demikian permainan ini sudah dikenalkan sejak dini kepada kanak-kanak.

Peraturan Permainan

Permainan ini terdiri dari tiga kolom dan beberapa blok dengan ukuran yang berbeda yang dapat diletakkan pada masing-masing kolom. Permainan ini dimulai dengan meletakkan blok ke dalam kolom dari yang terbesar pada bagian terbawah dan yang terkecil pada bagian yang teratas, sehingga berbentuk menara.

Tujuan dari permainan ini adalah memindah seluruh menara dari kolom satu ke kolom yang lain; dengan memenuhi aturan sebagai berikut:

  • Hanya satu blok yang boleh dipindah ke kolom lain pada waktu tertentu.
  • Setiap tindakan dilakukan dengan memindah blok teratas dari sembarang kolom untuk dipindah ke kolom lain.
  • Hanya boleh meletakkan blok yang lebih kecil di atas blok yang lebih besar.

Implementasi : 




import java.util.Scanner;
public class Hanoi {
public static void Han(int m, char a, char b, char c){
if (m > 0){
Han(m-1,a,c,b);
System.out.println("Move disc from "+a+" to "+b);
Han(m-1,b,a,c);
}
}
public static void main(String args[]){
Scanner h = new Scanner(System.in);
int n;
System.out.println("How many discs : ");
n = h.nextInt();
Han(n,'A','C', 'B');
}
}
view raw Tower of Hanoi hosted with ❤ by GitHub
output:


Komentar

Postingan populer dari blog ini

Final Project - Eas

Tugas 1 - PPB F