Program ini adalah program yang berguna dalam pengkonversian suatu bilangan desimal. Program ini dibuat dengan bahasa pemrograman C++ dimana user nantinya diminta menginput bilangan desimal dan memilih akan dikonversi ke bilangan apa, apakah biner, oktadesimal atau heksadesimal.
- Algoritma
1.
Mulai
2.
Input sebuah bilangan
3.
Masukkan pilihan konversi, ke biner, okta, atau
heksa
4.
Jika pilihan ke biner maka lakukan perulangan berikut
selama bilangan bernilai
> 0 maka lakukan:
·
Jika bilangan dibagi 2 sisanya 0 maka temp_biner = 0
·
Jika bilangan dibagi 2 sisanya 1 maka temp_biner = 1
·
Bilangan=bilangan dibagi 2
·
Biner=temp_biner ditambah biner
Menampilkan bilangan biner
5.
Jika pilihan ke okta maka lakukan perulangan berikut
Selama bilangan bernilai > 0 maka lakukan:
·
Jika bilangan dibagi 8 sisanya 0
maka temp_okta = 0
·
Jika bilangan dibagi 8 sisanya 1
maka temp_okta = 1
·
Jika bilangan dibagi 8 sisanya 2
maka temp_okta = 2
·
Jika bilangan dibagi 8 sisanya 3
maka temp_okta = 3
·
Jika bilangan dibagi 8 sisanya 4
maka temp_okta = 4
·
Jika bilangan dibagi 8 sisanya 5
maka temp_okta = 5
·
Jika bilangan dibagi 8 sisanya 6
maka temp_okta = 6
·
Jika bilangan dibagi 8 sisanya 7
maka temp_okta = 7
·
Bilangan=bilangan dibagi 8
·
Okta=temp_okta+okta
Menampilkan bilangan okta
6.
Jika pilihan ke heksa maka lakukan perulangan berikut
Selama bilangan > 0 maka lakukan:
·
Jika bilangan dibagi 16 sisanya
0 maka temp_heksa = 0
·
Jika bilangan dibagi 16 sisanya
1 maka temp_heksa = 1
·
Jika bilangan dibagi 16 sisanya
2 maka temp_heksa = 2
·
Jika bilangan dibagi 16 sisanya
3 maka temp_heksa = 3
·
Jika bilangan dibagi 16 sisanya
4 maka temp_heksa = 4
·
Jika bilangan dibagi 16 sisanya
5 maka temp_heksa = 5
·
Jika bilangan dibagi 16 sisanya
6 maka temp_heksa = 6
·
Jika bilangan dibagi 16 sisanya
7 maka temp_heksa = 7
·
Jika bilangan dibagi 16 sisanya
8 maka temp_heksa = 8
·
Jika bilangan dibagi 16 sisanya
9 maka temp_heksa = 9
·
Jika bilangan dibagi 16 sisanya
10 maka temp_heksa = a
·
Jika bilangan dibagi 16 sisanya
11 maka temp_heksa = b
·
Jika bilangan dibagi 16 sisanya
12 maka temp_heksa = c
·
Jika bilangan dibagi 16 sisanya
13 maka temp_heksa = d
·
Jika bilangan dibagi 16 sisanya
14 maka temp_heksa = e
·
Jika bilangan dibagi 16 sisanya
15 maka temp_heksa = f
·
Bilangan=bilangan dibagi 16
·
Heksa=temp_heksa ditambah heksa
Menampilkan bilangan heksa
7.
Jika user tidak memilih pilihan selain yang disediakan maka tampilkan
sebuah teks
8.
Selesai
- Program dalam C++
#include
#include
using namespace std;
int main()
{
int angka,pil;
string temp_biner,temp_okta,temp_heksa,biner,okta,heksa;
cout <<
"# ##Program Mengkonversi Bilangan Desimal ke Biner, Okta, Heksa ###\n\n\n";
cout <<
"Masukkan sebuah bilangan : ";
cin >> angka;
cout <<
"\njenis konversi : \n";
cout <<
"1) Biner \n";
cout <<
"2) Okta \n";
cout <<
"3) Heksa \n\n";
cout <<
"Masukkan pilihan : "; cin >> pil;
switch (pil)
{
case 1:
{
cout
<<"Bilangan biner dari bilangan " << angka <<
" adalah ";
while
(angka>0)
{
if
(angka%2==0)
temp_biner='0';
if
(angka%2==1)
temp_biner='1';
angka=angka/2;
biner=temp_biner+biner;
}
cout
<< biner;
break;
}
case 2:
{
cout
<< "Bilangan okta dari bilangan"<<
angka <<" adalah ";
while
(angka>0)
{
if
(angka%8==0)
temp_okta='0';
if
(angka%8==1)
temp_okta='1';
if
(angka%8==2)
temp_okta='2';
if
(angka%8==3)
temp_okta='3';
if
(angka%8==4)
temp_okta='4';
if
(angka%8==5)
temp_okta='5';
if
(angka%8==6)
temp_okta='6';
if
(angka%8==7)
temp_okta='7';
angka=angka/8;
okta=temp_okta+okta;
}
cout
<< okta;
break;
}
case 3:
{
cout
<< "Bilangan heksa dari bilangan "<< angka <<"
adalah ";
while
(angka>0)
{
if
(angka%16==0)
temp_heksa='0';
if
(angka%16==1)
temp_heksa='1';
if
(angka%16==2)
temp_heksa='2';
if
(angka%16==3)
temp_heksa='3';
if
(angka%16==4)
temp_heksa='4';
if
(angka%16==5)
temp_heksa='5';
if
(angka%16==6)
temp_heksa='6';
if
(angka%16==7)
temp_heksa='7';
if
(angka%16==8)
temp_heksa='8';
if
(angka%16==9)
temp_heksa='9';
if
(angka%16==10)
temp_heksa='a';
if
(angka%16==11)
temp_heksa='b';
if
(angka%16==12)
temp_heksa='c';
if
(angka%16==13)
temp_heksa='d';
if
(angka%16==14)
temp_heksa='e';
if (angka%16==15)
temp_heksa='f';
angka=angka/16;
heksa=temp_heksa+heksa;
}
cout
<< heksa;
break;
}
default:
{
cout
<< “Anda tidak memilih salah satu dari pilihan”
}
};
return 0;
}
- Penjelasan langkah –
langkah
Ø #include
Berfungsi
memasukkan fileheader iostream(menggunakan fungsi input output stream)
Ø #include
Berfungsi
memasukkan file header string(menggunakan fungsi-fungsi string)
Ø using namespace std;
Menggunakan
namespace std,karena ada banyak perintah cout maka agar tidak menulis std:: di
depan cout maka saya menggunakan perintah ini
Ø int main()
Mendeklarasikan fungsi
utama program
Ø int angka,pil;
variabel angka dan
pil bernilai integer
Ø string
temp_biner,temp_okta,temp_heksa,biner,okta,heksa;
variabel
temp_biner, temp_okta, temp_heksa, biner, okta, dan heksa bernilai string
Ø cout << "# ##Program
Mengkonversi Bilangan Desimal ke Biner, Okta, Heksa ###\n\n\n";
Menampilkan teks "#
##Program Mengkonversi Bilangan Desimal ke Biner, Okta, Heksa ###” dan memberi
enter 3x
Ø cout << "Masukkan sebuah
bilangan : "; cin >> angka;
Menampilkan teks
“Masukkan sebuah bilangan :” dan kemudian user menginput bilangan yang nantinya
disimpan di variabel angka
Ø cout << "\njenis konversi :
\n";
Memberi enter
kemudian menampilkan teks “jenis konversi: “ kemudian memberi enter lagi
Ø cout << "1) Biner \n";
Menampilkan teks
“1) Biner” kemudian memberi enter
Ø cout << "2) Okta \n";
Menampilkan teks
“2) Okta” kemudian memberi enter
Ø cout << "3) Heksa \n\n";
Menampilkan teks
“3) Heksa” kemudian memberi enter 2x
Ø cout << "Masukkan pilihan :
"; cin >> pil;
Menampilkan teks
“Masukkan pilihan :” kemudian user menginput pilihan yang nantinya disimpan di
variabel pil
Ø switch (pil)
melakukan
pemilihan pada kondisi yaitu pilihan yang di input oleh user
Ø case 1:
Jika pilihan 1
yang di input user maka akan melakukan perintah-perintah yang ada di dalam case
1
Ø cout <<"Bilangan biner dari
bilangan " << angka << " adalah ";
Menampilkan teks
“Bilangan biner dari bilangan angka (bilangan yang diinput user) adalah “
Ø while (angka>0)
Selama angka atau
bilangan yang di input user bernilai lebih dari pada 0 maka lakukan perulangan
Ø if (angka%2==0)
temp_biner='0';
Jika angka di bagi
2 sisanya = 0 maka simpan 0 ke temp_biner
Ø if (angka%2==1)
temp_biner='1';
Jika angka di bagi
2 sisanya = 1 maka simpan 1 ke temp_biner
Ø angka=angka/2;
angka=angka di
bagi 2
Ø biner=temp_biner+biner;
biner=temp_biner
ditambah dengan biner, berfungsi mengurutkan dan menyimpan temp_biner
akhir dari
perulangan
Ø cout << biner;
Menampilkan
bilangan biner
Ø break;
Loncat ke akhir
program, agar tidak melakukan perintah di bawahnya
Ø case 2:
Jika pilihan 2
yang di input user maka akan melakukan perintah-perintah yang ada di dalam case
2
Ø cout << "Bilangan okta dari bilangan"<< angka
<<" adalah ";
Menampilkan teks
“Bilangan okta dari bilangan angka (bilangan yang diinput user) adalah “
Ø while (angka>0)
Selama angka lebih
besar dari pada 0 maka lakukan perulangan
Ø if (angka%8==0)
temp_okta='0';
Jika angka di bagi
8 sisanya = 0 maka simpan 0 ke temp_okta
Ø if (angka%8==1)
temp_okta='1';
Jika angka di bagi
8 sisanya = 1 maka simpan 1 ke temp_okta
Ø if (angka%8==2)
temp_okta='2';
Jika angka di bagi
8 sisanya = 2 maka simpan 2 ke temp_okta
Ø if (angka%8==3)
temp_okta='3';
Jika angka di bagi
8 sisanya = 3 maka simpan 3 ke temp_okta
Ø if (angka%8==4)
temp_okta='4';
Jika angka di bagi
8 sisanya = 4 maka simpan 4 ke temp_okta
Ø if (angka%8==5)
temp_okta='5';
Jika angka di bagi
8 sisanya = 5 maka simpan 5 ke temp_okta
Ø if (angka%8==6)
temp_okta='6';
Jika angka di bagi
8 sisanya = 6 maka simpan 6 ke temp_okta
Ø if (angka%8==7)
temp_okta='7';
Jika angka di bagi
8 sisanya = 7 maka simpan 7 ke temp_okta
Ø angka=angka/8;
angka = angka
dibagi 8
Ø okta=temp_okta+okta;
okta=temp_okta
ditambah okta, berfungsi mengurutkan dan menyimpan temp_okta ke okta
akhir dari
perulangan
Ø cout << okta;
Menampilkan
bilangan okta
Ø break;
Loncat ke akhir
program, agar tidak melakukan perintah di bawahnya
Ø case 3:
Jika pilihan 3
yang di input user maka akan melakukan perintah-perintah yang ada di dalam case
3
Ø cout << "Bilangan heksa dari
bilangan "<< angka <<" adalah ";
Menampilkan teks
“Bilangan okta dari bilangan angka (bilangan yang diinput user) adalah “
Ø while (angka>0)
Ø if (angka%16==0)
temp_heksa='0';
Jika angka di bagi
16 sisanya = 0 maka simpan 0 ke temp_heksa
Ø if (angka%16==1)
temp_heksa='1';
Jika angka di bagi
16 sisanya = 1 maka simpan 1 ke temp_heksa
Ø if (angka%16==2)
temp_heksa='2';
Jika angka di bagi
16 sisanya = 2 maka simpan 2 ke temp_heksa
Ø if (angka%16==3)
temp_heksa='3';
Jika angka di bagi
16 sisanya = 3 maka simpan 3 ke temp_heksa
Ø if (angka%16==4)
temp_heksa='4';
Jika angka di bagi
16 sisanya = 4 maka simpan 4 ke temp_heksa
Ø if (angka%16==5)
temp_heksa='5';
Jika angka di bagi
16 sisanya = 5 maka simpan 5 ke temp_heksa
Ø if (angka%16==6)
temp_heksa='6';
Jika angka di bagi
16 sisanya = 6 maka simpan 6 ke temp_heksa
Ø if (angka%16==7)
temp_heksa='7';
Jika angka di bagi
16 sisanya = 7 maka simpan 7 ke temp_heksa
Ø if (angka%16==8)
temp_heksa='8';
Jika angka di bagi
16 sisanya = 8 maka simpan 8 ke temp_heksa
Ø if (angka%16==9)
temp_heksa='9';
Jika angka di bagi
16 sisanya = 9 maka simpan 9 ke temp_heksa
Ø if (angka%16==10)
temp_heksa='a';
Jika angka di bagi
16 sisanya = 10 maka simpan a ke temp_heksa
Ø if (angka%16==11)
temp_heksa='b';
Jika angka di bagi
16 sisanya = 11 maka simpan b ke temp_heksa
Ø if (angka%16==12)
temp_heksa='c';
Jika angka di bagi
16 sisanya = 12 maka simpan c ke temp_heksa
Ø if (angka%16==13)
temp_heksa='d';
Jika angka di bagi
16 sisanya = 13 maka simpan d ke temp_heksa
Ø if (angka%16==14)
temp_heksa='e';
Jika angka di bagi
16 sisanya = 14 maka simpan e ke temp_heksa
Ø if (angka%16==15)
temp_heksa='f';
Jika angka di bagi
16 sisanya = 15 maka simpan f ke temp_heksa
Ø angka=angka/16;
angka = angka
dibagi 16
Ø heksa=temp_heksa+heksa;
heksa=temp_heksa
ditambah heksa, berfungsi mengurutkan dan menyimpan temp_heksa ke heksa
akhir dari
perulangan
Ø cout << heksa;
Menampilkan
bilangan heksa
Ø break;
Loncat ke akhir
program, agar tidak melakukan perintah di bawahnya
Ø default:
Jika user
melakukan pilihan lain selain yang disediakan maka akan masuk ke default
Ø cout << “Anda tidak memilih salah
satu dari pilihan”
Menampilkan teks
“Anda tidak memilih salah satu dari pilihan”
Ø return 0;
Menyatakan fungsi
utama program telah berakhir dan program telah berhasil dieksekusi tanpa
terjadi error
- Kesimpulan dan Kegunaan
Kesimpulan dari program
diatas adalah untuk mengkonversi dari bilangan desimal ke bilangan yang di
inginkan user, yaitu biner, okta, atau heksa. Kegunaannya agar kita bisa lebih
cepat dalam melakukan konversi dibandingkan dengan cara manual.
0 komentar:
Posting Komentar