Tower of Hanoi - Java
Tower of Hanoi adalah sebuah permainan matematis atau teka-teki. Permainan ini terdiri dari tiga tiang dan sejumlah cakram dengan ukuran berbeda-beda yang bisa dimasukkan ke tiang mana saja. Permainan dimulai dengan cakram-cakram yang tertumpuk rapi berurutan berdasarkan ukurannya dalam salah satu tiang, cakram terkecil diletakkan teratas, sehingga membentuk kerucut.
Tujuan dari teka-teki ini adalah untuk memindahkan seluruh tumpukan ke tiang yang lain, mengikuti aturan berikut:
- Hanya satu cakram yang boleh dipindahkan dalam satu waktu.
- Setiap perpindahan berupa pengambilan cakram teratas dari satu tiang dan memasukkannya ke tiang lain, di atas cakram lain yang mungkin sudah ada di tiang tersebut.
- Tidak boleh meletakkan cakram di atas cakram lain yang lebih kecil.
- import java.util.Scanner;
- public class App
- {
- static void towerOfHanoi(int n, char from, char to, char aux) {
- if(n ==1 ){
- System.out.println("Memindah piringan 1 dari tiang " + from + " ke tiang " + to);
- return;
- }
- towerOfHanoi(n -1 , from, aux, to);
- System.out.println("Memindah piringan " + n + " dari tiang " +from + " ke tiang " + to);
- towerOfHanoi(n - 1, aux, to, from);
- }
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- System.out.print("Masukan jumlah piringan: ");
- int n = scanner.nextInt();
- towerOfHanoi(n, 'A', 'B', 'C');
- }
- }
Komentar
Posting Komentar