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.
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 :
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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'); | |
} | |
} |
Komentar
Posting Komentar