Saturday, December 24, 2011

OSK - Sistem Bilangan

Logika Program
#include <stdio.h>
#include <conio.h>
Pada bahasa C, penulisan di atas berfungsi untuk memasukkan data melalui alat input standar keyboard. Posisinya ditempatkan pada file judul (header file). Fungsi-fungsi yang prototype-nya berada di file judul stdio.h adalah gets( ), scanf( ), printf( ). Sementara fungsi yang prototipenya berada di file judul conio.h adalah getche( ), getchar( ), getch( ), dsb.


#include <math.h>
Merupakan baris program untuk fungsi matematika.

int main(void){
Berarti di dalam function main tersebut harus terdapat keyword return di bagian akhir fungsi dan mengembalikan nilai bertipe data int. Hasil return pun harus bertipe int, karena tipe data yang mendahului fungsi main() di atas dideklarasikan int. Tujuan nilai kembalian berupa integer adalah untuk mengetahui status eksekusi program. Akan tetapi statement di atas terdapat void yang berarti bahwa fungsi tersebut tidak mengembalikan nilai apapun. Function main() juga dipakai agar program C dapat dieksekusi. Tanpa function main, program C dapat dicompile tapi tidak dapat dieksekusi. Pada saat program C dijalankan, compiler C pertama kali akan mencari function main() dan melaksanakan instruksi-instruksi yang ada.

int dec=0, int bin,bit; double exp=0.0;
Adalah sebuah bentuk deskripsi suatu variabel. Di mana int adalah integer untuk bilangan bulat, dan double digunakan untuk bilangan desimal atau pecahan.

printf("bilangan desimal = %d\n",dec);
Merupakan fungsi yang paling umum digunakan dalam menampilkan data. Berbagai jenis data dapat ditampilkan ke layar dengan fungsi ini.
Bentuk penulisan : printf(“string kontrol”, argumen1, argumen2, …);
String kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format seperti %d, %f. Penentu format dipakai untuk memberi tahu kompiler mengenai jenis data yang akan ditampilkan. Arti %d adalah membaca sebuah nilai integer desimal.

getch();
Dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan enter. Fungsi getch() merupakan singkatan dari get character artinya baca karakter tetapi isian data yang dimasukkan tidak akan ditampilkan di layar.

scanf("%d",&bin);
Merupakan fungsi yang dapat digunakan untuk memasukkan berbagai jenis data. Bentuk scanf() sesungguhnya menyerupai fungsi printf() yang melibatkan penentu format. Bentuk penulisan: scanf(“string kontrol”, daftar argumen);
Hal-hal yang perlu diperhatikan dalam pemakaian scanf yaitu :
·         scanf memberi pergantian baris secara otomatis, tidak perlu memberi \n untuk berpindah ke baris berikutnya.
·         scanf memakai penentu format, tetapi tidak memerlukan penentu lebar field. Contoh yang salahscanf(“10.2f”,&gaji);
·         Variabel yang dipakai di dalam scanf harus didahului dengan operator alamat (&).


(1)
 
while (bin){bit=bin%10;
if (bit !=0 && bit !=1){flag=1;}
(2)
 
bin=bin/10;                                                                                         
dec=dec+bit*pow(2,exp);
exp++;}
(3)
 
if (flag){printf("bukan bilangan biner");}
else {printf("bilangan desimal = %d\n",dec);}
(1)-Di atas merupakan sebuah perintah perulangan yang di dalamnya terdapat percabangan. Bila nilai bin dimasukkan, maka akan dijalankan perintah bit=bin%10, artinya bit didapat dari bin dibagi dengan 10. Kemudian jika hasil bit tidak sama dengan 0 dan 1, maka flag bernilai 1.
(2)-Setelah itu, dijalankan kembali proses yang terdapat dalam pengulangan sebelumnya, bin=bin/10 dan dec=dec+bit*pow(2, exp) dimana nilai exp akan bertambah 1 tiap pengulangan. Fungsi dari pow adalah untuk menghitung xy, memerlukan #include <math.h>. Bentuk umum dari pow adalah pow(x,y);
(3)-Dilanjutkan dengan percabangan if-else. Jika flag, maka akan tercetak “bukan bilangan biner”, selain dari itu akan tercetak bilangan desimal yang tadi sudah dicari nilainya.

0 comments:

Post a Comment