Sunday, 15 August 2010

Konversi Bilangan Biner ke Bilangan Desimal

Mengkonversi Bilangan Biner ke Bilangan Desimal (Max 11111111)
Algoritma :
1.Deklarasikan variabel bil untuk bilangan yang akan dikonversi, bin untuk menampung bilangan biner, hasil untuk hasil pengoperasian, i untuk pangkat dan stack untuk stack.
2.Masukkan bilangan dan nyatakan ke bil.
3.Bila bilangan kurang dari atau sama dengan 11111111 lakukan langkah 4 s/d 17, namun bila bilangan yang dimasukkan lebih dari 11111111 cetak ”Max 11111111” lalu kembali ke langkah 2.
4.Hitung sisa hasil bagi antara nilai pada bil dengan 10 kemudian nyatakan ke bin.
5.Bila hasil bagi tersebut sama dengan 0 atau sama dengan 1, maka lakukan langkah 6 s/d 17, namun bila tidak cetak ”Biner hanya 0 dan 1” kemudian kembali ke langkah 2.
6.Bagi nilai pada bil dengan 10.
7.Push nilai pada bin dan simpan di stack.
8.Cek apakah nilai pada bil sama dengan 0. Bila nilai bil sama dengan 0 lakukan langkah 9 s/d 17, namun bila nilai bil tidak sama dengan 0 kembali ke langkah 4.
9.Selama stack masih ada isinya atau belum kosong lakukan langkah 10 s/d 12.
10.pop stack dan isi ke bin.
11.Tambahkan nilai pada hasil dengan hasil kali antara nilai pada bin dengan 2 pangkat i.
12.Tambahkan i dengan 1.
13.Cetak hasil.
14.Tanya apakah user masih ingin mengkonversi biner ke desimal.
15.Bila jawabannya iya, maka kembali ke langkah ke-2.
16.Bila jawabannya tidak, maka program dapat langsung diakhiri.
17.Namun jika bukan keduanya, tanyalah kembali (kembali ke langkah 14).
Flowchart :

No comments: