Latihan: Konversi Desimal ke Biner
Memanfaatkan prinsip LIFO pada Stack untuk menyelesaikan masalah konversi bilangan desimal menjadi bilangan biner.
Studi Kasus
Pernahkah Anda bertanya-tanya bagaimana komputer mengubah angka desimal (basis 10) yang biasa kita gunakan menjadi angka biner (basis 2)?
Algoritma matematis untuk mengubah desimal ke biner adalah dengan membagi angka tersebut dengan 2 secara terus-menerus, dan mencatat sisa baginya.
Misalnya, kita ingin mengonversi angka 13:
13 / 2= 6, sisa 1 (Simpan 1)6 / 2= 3, sisa 0 (Simpan 0)3 / 2= 1, sisa 1 (Simpan 1)1 / 2= 0, sisa 1 (Simpan 1)
Jika dibaca secara normal (dari proses 1 ke 4), kita mendapat 1011. Namun, urutan biner yang benar adalah dari bawah ke atas (sisa bagi terakhir ke pertama). Jadi, biner dari 13 adalah 1101.
Kebutuhan untuk menyimpan urutan dan mengambilnya secara terbalik ini adalah alasan sempurna mengapa kita menggunakan Stack!
Yang Harus Dilakukan
Kamu tidak perlu menulis ulang fungsi Push dan Pop (sudah disediakan). Fokuslah pada logika algoritma konversinya di dalam fungsi :