OPERATOR Teknik Informatika Universitas Muhammadiyah Malang 2011 Pemrogramman Terstruktur
Tujuan Pembelajaran Mahasiswa diharapkan mengetahui macam- macam operator di C Mahasiswa mampu menggunakan operator- operator di C dengan tepat 2
Topik Assignment sederhana Aritmatika Increment & decrement Kurung buka-tutup Relasi & logika Bitwise Operator assignment Operator koma 3
Macam-macam Operator Assignment sederhana Aritmatika Increment & decrement Kurung buka-tutup Relasi & logika Bitwise Operator assignment Operator koma 4
Istilah-istilah Operator Operand Nilai kembalian (return value) 5
Operator dan Operand Sebuah simbol yang menjalankan operasi dengan satu, dua, maupun tiga operand. Operand : data yang akan diproses. Bisa berupa angka, literal, variabel maupun kostanta * 3 Operand Operator
Assignment Sederhana Simbol : = (tanda sama dengan) Tugasnya adalah memberikan nilai ke variabel yang ada disebelah kiri tanda. Contoh : int speed = 0; 7
Contoh Assignment Contoh : a = 1 memberikan nilai 1 kepada a b = 1.23 memberikan nilai 1.23 kepada b c = a memberikan nilai apapun di a kepada c
Operator Aritmetika Contoh : a=1+1, memberikan 2 kepada a b= , memberikan 3.5 kepada b c=8/a, memberikan 4 kepada c d=15%c, memberikan 3 kepada d 9 Operasi MatematikSimbol Operator Penjumlahan+ Pengurangan- Perkalian* Pembagian/ Pencarian sisa hasil bagi%
Operator Increment & Decrement Dibedakan menjadi : 1.Prefix (simbol ada didepan operand) 2.Postfix (simbol dibelakang operand) Simbol : increment ++ Decrement -- 10
Operator Increment (++) Contoh : ++a, menjadikan a bernilai (a+1) dan mengembalikan nilai tersebut b=++a, menjadikan b dan a bernilai (a+1) a++, menjadikan a bernilai (a+1) tetapi mengembalikan nilai awal a b=a++, menjadikan b bernilai a dan a bernilai (a+1)
Operator Decrement (--) Contoh : x = 4; y = x--; Hasil : y = 4, x = 3 y = --x; Hasil : y = 3, x = 3
Kurung Buka-tutup Simbol : ( ) Digunakan untuk mengelompokkan operator yang akan dievaluasi bersama Secara umum, ekspresi akan dievaluasi dari kiri ke kanan, contoh : 3 * ekuivalen dg (3*5) + 2, tidak ekuivalen dg 3 * (5+2) 13
Operator Logika Hasil dari operator logika berupa 0 atau 1. SimbolKeterangan &&Operator AND ||Operator OR !Operator NOT
Logika OR (||) Operand 1Operand 2Hasil Tabel Logika OR Contoh : 0 || 0 || 1(mengembalikan 1) 0 || 0 (mengembalikan 0) a || b (mengembalikan 1 apabila nilai a atau b tidak nol, mengembalikan 0 apabila sebaliknya)
Logika AND (&&) Tabel Logika AND Contoh : 1 && 1 (mengembalikan 1) 1 && 1 && 0 (mengembalikan 0) a && b (mengembalikan 1 jika a dan b tidak nol, mengembalikan 0 jika sebaliknya) Operand 1Operand 2Hasil
Logika NOT (!) Merupakan operator negasi atau menghasilkan nilai kebalikan dari operand-nya. Tabel Logika NOT Contoh : !a (mengembalikan 1 apabila operand bernilai 0 dan mengembalikan 0 jika sebaliknya) 17 OperandHasil 01 10
Operator Relasi (pembandingan) SimbolKeterangan > Lebih besar >= Lebih besar sama-dengan < Lebih kecil <= Lebih kecil sama-dengan == kesamaan (equal to) != ketidak-samaan
Operator > dan >= a>b mengembalikan 1 jika a lebih besar dari b dan nol jika sebaliknya a>=b mengembalikan 1 jika a lebih besar atau sama dengan b dan nol jika sebaliknya 19
Operator < dan <= a<b mengembalikan 1 jika a lebih kecil dari b dan nol jika sebaliknya a<=b mengembalikan 1 jika a lebih kecil atau sama dengan b dan nol jika sebaliknya
Operator == dan != a == b (kesamaan) mengembalikan 1 apabila a dan b bernilai sama, mengembalikan 0 jk sebaliknya a != b (ketidak-samaan) mengembalikan 1 apabila a tidak sama dg b, mengembalikan 0 jk sebaliknya 21
Operator Assignment (Penugasan) OperatorKeterangan =Pemberian nilai +=Penambahan bilangan -=Pengurangan bilangan *=Pengalian bilangan /=Pembagian bilangan %=Pemerolehan sisa pembagian
Operator Penugasan (cont.) Contoh : a = 10; a+=2; Hasilnya a=12 a-=2;Hasilnya a=8 a*=2;Hasilnya a=20 a/=2;Hasilnya a=5 a%=2;Hasilnya a =0
Operator Koma Operator :, Digunakan untuk menggabung beberapa ekspresi. Pemrosesan dilakukan dari kiri kanan Contoh : X = (B=5, B*2) X akan bernilai 10, B bernilai 5 Y = (A=B+3, A/2) Y akan bernilai 4, A bernilai 8
Operator Bitwise Operasi data berbasis bit. SimbolKeterangan ~Not/negasi &AND Operation ^Exclusive OR Operation |Inclusive OR Operation <<Geser 1 bit ke kiri >>Geser 1 bit ke kanan >>>Geser kanan tak bertanda
Operator Bitwise Bitwise OR : | – Ekspresi 9 | 3 adalah (1001 | 0011) secara biner, hasilnya adalah 1011 (desimalnya 11). – Bernilai 1 apabila salah satu operand bernilai 1 Bitwise AND : & – Ekspresi 9 & 3 adalah (1001 & 0011), hasilnya 0001 (1) – Bernilai 1 hanya jika kedua operand bernilai 1
Operator Bitwise Bitwise NOT : ~ – Membalik seluruh bit – ~10101 adalah (desimalnya -22, karena bit bagian kiri juga ikut dinegasi menjadi satu) Bitwise XOR : ^ – Ekspresi 9 ^ 3 (1001 ^ 0011) bernilai 1010 (desimalnya 10) – Bernilai 0 jika kedua operand bernilai sama. Geser kiri & geser kanan : > Menggeser bit ke kiri atau kanan a = 2 << 3, a menjadi 16 (0010 menjadi 10000) b = 13 >> 2, b menjadi 3 (1101 menjadi 11)
Precedence/Prioritas Operator Merupakan level operator yang menentukan prioritas sebuah operator untuk dijalankan terlebih dahulu ketika dalam sebuah baris terdapat lebih dari satu operator.
Tabel Prioritas Operator 29
Latihan 1.Berapakah hasil ekspresi berikut : a * 5 b. 10 – % 6 c. 3 % 7 / 2 – 1 d. ++5 * 3 / 6 % 7 e. 3 * * 7 f. (15%8) > (2*3+15) g. (1 || 0) && (2 && 1) h. 6 << 2 i. 12 >> 3 30
Latihan 2.Diketahui : int a=1,b=2,c=3,e=5; float d=4.0; Berapa nilai e dari ekspresi berikut : 1.e=(e=1, (int) d+2); 2.e=(int)d-- - c++ + b; 3.e=a & (e=(int)d++ ) <5; 4.e=!a && (e+=(int)d++ ) > 5; 5.e=a!=(a >(int)d++ ) >> 1);
Daftar Pustaka Budi Hartanto, “Pembuatan Program C”, Penerbit Andi, 2004 Jogiyanto H., “Konsep Dasar Pemrograman Bahasa C”, Penerbit Andi, 2003