Operator

Belajar Bahasa C (Dasar) Operator-operator Perhitungan Untuk melakukan perhitungan-perhitungan data, maka diperlukan operatoroperator perhitungannya. Operator-operator yang paling umum dipakai dalam pemrograman dengan bahasa C adalah : Operator Contoh Arti + c=a+b Variable c diisi dari isi variable a ditambah isi variable b - c=a-b Variable c diisi dari isi variable a dikurangi isi variable b * c=a*b Variable c diisi dari isi variable a dikali dengan isi variable b / c=a/b Variable c diisi dari isi variable a dibagi oleh isi variable b ++ a++ Isi variable a ditambah 1. Perintah ini sama dengan a=a+1 atau a+=1 -- a-- Isi variable a dikurang. Perintah ini sama dengan a=a-1 atau a-=1 % c=a%b Variable c diisi dari sisa pembagian variable a dibagi variable b += c+=a Variable c ditambah dengan isi variable a. Sama dengan c=c+a /= c/=a Variable c dibagi dengan isi variable a. Sama dengan c=c/a -= c-=a Variable c dikurangi dengan isi variable a. Sama dengan c=c-a *= c*=a Variable c dikali dengan isi variable a. Sama dengan c=c*a %= c%=a Variable c diisi dari sisa pembagian c dibagi isi variable a. Sama dengan c=c%a Operator Istilah Keterangan I++ Post increment Nilai I dikeluarkan dulu, kemudian I ditambah 1 ++I Pre increment Nilai I ditambah 1 dulu, kemudian nilainya dikeluarkan I-- Post decrement Nilai I dikeluarkan dulu, kemudian I dikurangi 1 --I Pre decrement Nilai I dikurangi 1 dulu, kemudian nilainya dikeluarkan Operator-operator Manipulasi Bit Untuk keperluan memanipulasi data dalam bentuk bit, Turbo C menyediakan operator-operator berikut : Operator Operasi << Geser bit ke kiri >> Geser bit ke kanan && Dan(AND) | Atau(OR) ^ XOR ~ NOT(Komplemen) Seluruh operator manipulasi bit hanya dikenakan pada operand / variabel / angka yang bertipe bilangan bulat (int, char, long). Contoh : #include #include main() { unsigned int x,y,and,or,not,xor; x=78;// 41h y=520;// 208h and=x & y; or=x | y; xor=x ^ y; not = ~y; clrscr(); printf("x : %6u : %4Xh\n",x,x); printf("y : %6u : %4Xh\n",y,y); printf("--------------------------\n"); printf("x & y : %6u : %4Xh\n",and,and); printf("x | y : %6u : %4Xh\n",or,or); printf("x ^ y : %6u : %4Xh\n",xor,xor); printf(" ~y : %6u : %4Xh\n",not,not); getch(); return 0; } Jika di-Run akan menghasilkan : x : 78 : 4Eh y : 520 : 208h ------------------------- x & y : 8 : 8h x | y : 590 : 24Eh x ^ y : 582 : 246h ~y : 65015 : FDF7h Operator-operator pergeseran bit, berguna untuk menggeserkan bit yang ada dalam suatu variabel. Aturan-aturan Perhitungan Perhatikan perintah berikut : float a; a= 9/5; Jika anda mengharapkan bahwa nilai yang didapat adalah 1.8, maka anda akan kecewa, karena angka yang didapat adalah Kenapa ini terjadi?. Ada aturan-aturan pengkonversian data yang berlaku dalam suatu operasi perhitungan, diantaranya : Jika suatu bilangan bulat dioperasikan dengan bilangan bulat, maka nilai yang didapat adalah bilangan bulat pula. Operasi perhitungan dilakukan berdasarkan tipe bilangan yang terbesarnya. Jadi jika ada suatu perhitungan antara int dengan long, maka komputer akan memperlakukan int sebagai long. Untuk mengkonversi suatu variabel menjadi suatu variabel yang berbeda tipe, maka bisa dilakukan dengan type cast. Caranya adalah dengan menulis tipe data yang diinginkan diapit dengan tanda kurung. Contoh : float a,b; a=(float)9/5; b=(float)(9/5); Pada perintah a=(float) 9/5, maka angka 9 akan dikonversikan menjadi float sehingga perintah tersebut akan menghasilkan nilai 1.8, tetapi jika perintah b=(float)(9/5) dikerjakan maka akan menghasilkan nilai 1.0 karena yang dikerjakan duluan adalah 9/5 yang menghasilkan nilai 1 yang kemudian dikonversikan ke dalam bentuk float. Konversi tipe data juga terjadi dalam operasi penugasan / pengisian data terhadap variabel. Perhatikan perintah berikut : #include #include main() { char c; int i; float f; f=65.9; i=f; c=i; printf("F : %f\n",f); printf("I : %d\n",i); printf("C : %c\n",c); getch(); return 0; } Jika dieksekusi akan menghasilkan : F : 65.900002 I : 65 C : A Keterangan : f=65.9; pengisian nilai 65.9 ke variabel f i=f; pengisian nilai f ke variabel i. Dalam baris ini terjadi konversi dari float ke int. Pengkonversian float ke int selalu menghilangan angka pecahannya, dan tidak terjadi pembulatan. c=i; pengisian nilai i ke variabel c. Dalam baris ini terjadi konversi dari int ke char. Mendefinisikan Konstanta Simbol Untuk mendefinisikan suatu konstanta, perintah yang bisa dipakai adalah perintah $define diikuti dengan nama konstanta dan isinya. Contoh : #include #include #define PI 3.14 #define pembuat "Andri Heryandi" main() { float radius=10,keliling,luas; keliling=2*PI*radius; luas=PI*radius*radius; printf("Perhitungan Lingkaran\nDibuat Oleh : %s\n",pembuat); printf("======================\n"); printf("Radius : %6.2f\n",radius); printf("Keliling : %6.2f\n",keliling); printf("Luas : %6.2f\n",luas); getch(); return 0; } Jika dieksekusi, akan menghasilkan : Perhitungan Lingkaran Dibuat Oleh : Andri Heryandi ====================== Radius : 10.00 Keliling : 62.80 Luas : 314.00 Ketika program dieksekusi, maka compiler akan mengganti semua PI dengan nilai 3.14 dan pembuat dengan “Andri Heryandi”. Jadi ketika kita ingin menggunakan nilai PI yang lebih exact, maka pada define PI, nilai 3.14 diganti dengan 22.0/7. 

Comments