Cara Mengubah Bilangan Biner menjadi Desimal di C

Cara Mengubah Bilangan Biner Menjadi Desimal Di C



Bilangan biner adalah kombinasi dari 0 dan 1, sedangkan bilangan desimal adalah bilangan berbasis 10. Dalam pemrograman C, kami mengubah bilangan biner menjadi bilangan desimal untuk meningkatkan kinerja kode dan membuatnya lebih mudah dipahami oleh pelajar.

Panduan ini akan membahas cara mengonversi bilangan biner menjadi bilangan desimal dalam bahasa C.

Sebelum kita masuk ke konsep itu sendiri, mari kita lihat apa itu bilangan biner dan desimal dalam C.







Format Bilangan Biner dan Desimal dalam C

Bilangan biner adalah bilangan yang direpresentasikan dalam bentuk kombinasi dua digit 0 dan 1, dan disebut sebagai sistem bilangan basis 2. Sebaliknya, bilangan desimal adalah bilangan berbasis 10 yang terdiri dari angka mulai dari 0 hingga 9.



Seperti yang kalian lihat dari namanya binary yang artinya dua maka ketika kita memiliki bilangan berupa gabungan dua digit 0 dan 1, kita menyebutnya bilangan biner. itu disebut sebagai sistem angka basis 2.



Mengapa Mengubah Bilangan Biner menjadi Desimal di C

Bekerja dengan bilangan biner merupakan tantangan bagi pengembang karena banyaknya kemungkinan kombinasi 0 dan 1. Angka desimal, di sisi lain, lebih mudah dipahami dan diproses, menjadikannya metode yang lebih cepat dan efisien untuk program C. Mengubah bilangan biner menjadi bilangan desimal dalam C melibatkan mengalikan semua digit biner dengan pangkat dua yang sesuai dan menjumlahkan hasilnya, yang dilakukan dengan menggunakan loop.





Algoritma Sederhana untuk Mengonversi Biner ke Desimal di C

Berikut adalah algoritma sederhana untuk mengubah biner menjadi desimal dalam C menggunakan enam langkah sederhana:

  • Ambil bilangan biner sebagai masukan dari pengguna.
  • Inisialisasi variabel 'desimal' ke 0 dan variabel 'basis' ke 1.
  • Ekstrak digit paling kanan dari bilangan biner menggunakan operator modulus (%), dan tambahkan hasil kali digit ini dan basis ke variabel desimal.
  • Kalikan variabel basis dengan 2.
  • Hapus digit paling kanan dari bilangan biner menggunakan pembagian bilangan bulat (/).
  • Ulangi langkah 3-5 sampai semua digit telah diproses.
  • Menampilkan nilai desimal dari bilangan biner yang disimpan dalam variabel 'desimal'.

Mengkonversi Bilangan Biner ke Desimal di C

Berikut ini adalah kode sederhana untuk mengubah bilangan biner menjadi desimal dalam pemrograman C.



#termasuk

#termasuk

int utama ( ) {

panjang panjang A ;

printf ( 'Silakan Masukkan nomor Biner:' ) ;

scanf ( '%lld' , & A ) ;

printf ( '%lld dalam biner = %d dalam bentuk desimal' , A , binaryToDecimal ( A ) ) ;

kembali 0 ; }

int binaryToDecimal ( panjang panjang A ) {

int Desember = 0 , B = 0 , R ;

ketika ( A != 0 ) {

R = A % 10 ;

A /= 10 ;

Desember += R * pow ( 2 , B ) ;

++ B ;

}

kembali Desember ;

}

Pada kode di atas, fungsi global dibuat sebagai namanya “biner ke Desimal” . Kemudian di bagian utama, kita mendeklarasikan variabel long long sebagai 'A' dan minta pengguna untuk menambahkan bilangan biner dan mengubahnya menjadi desimal dengan memanggil “biner ke Desimal” fungsi dengan parameter a”. Dalam “biner ke Desimal” definisi fungsi konversi desimal melalui while loop.

Keluaran

Anda juga dapat menggunakan built-in strtol() berfungsi untuk mengubah bilangan biner menjadi desimal dalam pemrograman C.

Berikut ini adalah kode untuk fungsi tersebut:

#termasuk

#termasuk

int utama ( ) {

arang binary_string [ ] = '1110' ;

arang * ptr ;

panjang nilai_desimal ;

nilai_desimal = jatuh ( binary_string , & ptr , 2 ) ;

printf ( 'Tali biner' % S ' sama dengan nilai desimal %ld. \N ' , binary_string , nilai_desimal ) ;

kembali 0 ;

}

Kode di atas mengubah string biner “1110” ke dalam nilai desimal yang setara dengan menggunakan strtol() fungsi, yang mengambil string biner, penunjuk ke penunjuk karakter, dan basis sistem bilangan sebagai argumen. Akhirnya, itu mencetak hasilnya ke konsol menggunakan printf().

Keluaran

Kesimpulan

Seperti yang kita ketahui, manusia lebih mengenal bilangan desimal dibandingkan bilangan biner karena sulit diatur. Digit desimal mudah untuk melakukan operasi aritmatika karena berada di basis 10 dan pemrosesannya lebih cepat dibandingkan dengan digit biner, oleh karena itu, bilangan biner diubah menjadi desimal. Gambaran di atas telah menjelaskan konversi bilangan biner menjadi desimal dengan program C dengan fungsi yang ditentukan pengguna dan built-in strtol() fungsi.