Dalam contoh ini, Anda akan belajar mengubah bilangan biner menjadi oktal dan sebaliknya secara manual dengan membuat fungsi yang ditentukan pengguna.
Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman C berikut ini:
- Fungsi C.
- C Fungsi yang ditentukan pengguna
Program untuk Mengonversi Biner ke Oktal
Dalam program ini, pertama-tama kita akan mengubah bilangan biner menjadi desimal. Kemudian, bilangan desimal diubah menjadi oktal.
#include #include int convert(long long bin); int main() ( long long bin; printf("Enter a binary number: "); scanf("%lld", &bin); printf("%lld in binary = %d in octal", bin, convert(bin)); return 0; ) int convert(long long bin) ( int oct = 0, dec = 0, i = 0; // converting binary to decimal while (bin != 0) ( dec += (bin % 10) * pow(2, i); ++i; bin /= 10; ) i = 1; // converting to decimal to octal while (dec != 0) ( oct += (dec % 8) * i; dec /= 8; i *= 10; ) return oct; )
Keluaran
Masukkan bilangan biner: 101001 101001 dalam biner = 51 dalam oktal
Program untuk Mengonversi Oktal ke Biner
Dalam program ini, bilangan oktal diubah menjadi desimal pada awalnya. Kemudian, bilangan desimal diubah menjadi bilangan biner.
#include #include long long convert(int oct); int main() ( int oct; printf("Enter an octal number: "); scanf("%d", &oct); printf("%d in octal = %lld in binary", oct, convert(oct)); return 0; ) long long convert(int oct) ( int dec = 0, i = 0; long long bin = 0; // converting octal to decimal while (oct != 0) ( dec += (oct % 10) * pow(8, i); ++i; oct /= 10; ) i = 1; // converting decimal to binary while (dec != 0) ( bin += (dec % 2) * i; dec /= 2; i *= 10; ) return bin; )
Keluaran
Masukkan bilangan oktal: 67 67 dalam oktal = 110111 dalam biner