Object-oriented Programming (OOP) with JAVA 2011/2012 Struktur Dasar JAVA Object-oriented Programming (OOP) with JAVA 2011/2012
Topic Operator Percabangan Perulangan Array
OPERATOR Operator : sebuah simbol yang digunakan untuk melakukan operasi tertentu. Operasi yang dapat dilakukan meliputi operasi penambahan, pengurangan, perkalian, dan lain sebagainya. Operand : berupa data/nilai yang akan dikenai operasi.
Contoh 1. Misalkan ada ekspresi : 4 % 2 = 0 maka, operand = 4 dan 2 operator = % hasil = 0 Ekspresi : ++A operand = A operator = ++ hasil = nilai A ditambah 1
Kind of Operator Plus Minus + - Aritmatika + - * / % SIMBOL Plus Minus + - Aritmatika + - * / % Increment decrement ++ -- Relasional > < >= <= == != Assignment = Logika && || ! ^ Bitwise & | ^ ~ >> >>> <<
Operator Plus Minus Ketika bilangan tidak memiliki tanda +/- maka secara otomatis bilangan tersebut merupakan bilangan positif. SIMBOL JENIS OPERASI CONTOH + Penanda bilangan positif +a - Penanda bilangan negatif -a
Operator Increment & Decrement SIMBOL JENIS OPERASI ++ Tambah variabel/literal dengan 1 -- Kurangi variabel/literal dengan 1
Operator Increment & Decrement Pre-increment, contoh : ++a Post-increment, contoh : a++ Decrement(--) Pre-decrement, contoh : --a Post-decrement, contoh : a--
Operator Increment & Decrement
Operator Increment & Decrement
Operator Aritmatika Hasilnya berupa nilai numerik. Tipe data dari operand mempengaruhi tipe dari angka yang dihasilkan. SIMBOL JENIS OPERASI CONTOH + Additional (penambahan) a+b - Subtraction (pengurangan) a-b * Multiplication (perkalian) a*b / Division (pembagian) a/b % Modulus (sisa pembagian) a%b
Operator Relasi SIMBOL JENIS OPERASI CONTOH > Lebih besar a>b >= Lebih besar sama-dengan a>=b < Lebih kecil a<b <= Lebih kecil sama-dengan a<=b == Sama-dengan (equal to) a==b != Tidak sama-dengan a!=b Operator relasi disebut juga operator perbandingan, membandingkan dua operand dan mengembalikan nilai true atau false. Operand dapat sembarang nilai numerik.
Operator Relasi public static void main(String [] args) { System.out.println(‘a’ ==‘a’); System.out.println(‘a’ ==‘b’); System.out.println(5 != 6); System.out.println(5.0 == 5L); System.out.println(true==false); }
Operator Logika Operasi dengan operator logika berbasis nilai boolean (true/false) hasilnya juga berupa nilai boolean.
Operator & (and)
Operator | (or) |
Operator ^ (xor) ^
Operator Bitwise Operasi bitwise dilakukan pada bilangan biner. Tabel logika :
Operator >>
Operator <<
Operator Assignment
Operator Assignment x = x + 2 * 5; Disingkat x+=2*5 Ekspresi pada bagian kanan = selalu dievaluasi terlebih dahulu
Prioritas Operator
Berapakah hasil operasi berikut? (2*3)+(6/2)-4 = (175%6) + (2*12) = 75-(24/6/10)+25%3 = (3*7-11) > (81%4+3) 24/6+1 == 17%3+2 (4%2<17) && (3*5>8/4) 22/11<17-10 || 41%4+3*2 2*3%4 & 5 ++7 / 4 >= 99/9-10 175%6+2*12 != 23*2/7
Berapakah hasil operasi berikut? (2*3)+(6/2)-4 =5 (175%6) + (2*12) = 25 75-(24/6/10)+25%3 = 76 (3*7-11) > (81%4+3)=10>4true 24/6+1 == 17%3+2 5==3false (4%2<17) && (3*5>8/4) true && truetrue 22/11<17-10 || 41%4+3*2 Error 2*3%4 & 5 2 & 5 = 0 ++7 / 4 >= 99/9-10 2>=1true 175%6+2*12 != 23*2/7 25 !=6true
Macam-macam Percabangan if (...) if (…) else (…) if (…) else if (…) else (…) switch (…)
Percabangan : if Formula : if (ekspresi_boolean) statement Atau statements } Logical expression Statements ….. Y N
Latihan Buatlah program yang akan membaca sebuah angka integer. Jika angka di atas 75 tuliskan “Lulus”. Algoritma : deklarasikan variabel bernama nilai Inisialisasi variabel nilai dengan sembarang angka jika nilai > 75 tulis (“Lulus”) Gunakan perintah System.out.print(); untuk mencetak teks kelayar.
Latihan Buatlah program yang akan menerima input sebuah huruf. Jika huruf adalah ‘Y’ atau ‘y’ tuliskan “Proses diteruskan” Algoritma : deklarasikan variabel char bernama huruf Inisilisasi variabel huruf dengan sembarang huruf jika huruf==‘Y’ atau huruf==‘y’ tulis (“Proses diteruskan”)
Percabangan : if-else Formula : atau if (ekspresi_boolean) statement 1 Logical expression Statements-1 ….. Y N Statements-2 Formula : if (ekspresi_boolean) statement 1 else statement 2 atau if (ekspresi_boolean) { statements 1 } else { statements 2 }
Latihan Buatlah program yang akan menerima input berupa nilai integer. Jika angka merupakan kelipatan 5 tuliskan “Kelipatan 5”, jika tidak tuliskan “Bukan kelipatan 5”. Algoritma : deklarasikan variabel bernama angka (int) Inisialisasi variabel angka dengan sembarang nilai jika angka%5==0 tulis (“Kelipatan 5”) else tulis (“Bukan kelipatan 5”)
Latihan Buatlah program yang akan menerima data berupa angka integer. Jika 5<angka<50 tuliskan “Memenuhi”, jika tidak tuliskan “Tidak memenuhi” Algoritma : Deklarasikan variabel bernama nilai (int) Inisialisasi variabel nilai dengan sembarang angka jika nilai>5 dan nilai<50 tulis (“Memenuhi”) else tulis (“Tidak memenuhi”)
Percabangan : if-else if-else Formula : if( ekspresi_boolean1 ) statement1; else if(ekspresi_boolean2) statement2; else statement3; if(ekspresi_boolean1 ) { statement1; } else if(ekspresi_boolean2 ) { statement2; } else { statement3; }
Latihan Buatlah program yang memiliki satu buah variabel bernama angka (int). Tuliskan output sesuai ketentuan : Angka Output angka<50 “Kurang” 50<=angka<70 “Cukup” Angka>=70 “Baik”
Percabangan : switch Formula : switch( switch_ekspresi ){ case case_pilihan1: statement1;// statement2;//blok 1 break; case case_pilihan2: statement1;// statement2;//blok 2 break; : default: statement1;// statement2;//blok n }
Latihan Selesaikan soal sebelumnya dengan switch.
Ekspresi Kondisional Gunakan : ? (ternary operator) Tujuan : menggantikan if else Pola : ekspresi-1 ? ekspresi-2 : ekspresi-3 Program akan mengevaluasi ekspresi-1 : Jika nilai=1 maka ekspresi-2 dieksekusi Jika nilai=0 maka ekspresi-3 dieksekusi
Konsep Perulangan Sebuah proses di dalam program yang akan mengulang satu atau beberapa statement terus-menerus hingga sampai pada kondisi berhenti.
Bentuk Perulangan di Java for while do-while
Pengulangan : for Umumnya digunakan pada pengulangan yang jumlah iterasinya sudah pasti atau sudah diketahui sebelumnya. Formula : for (inisialisasi; kondisi; iterasi) { //statement yang akan diulang }
Alur Kerja for Start inisialisasi false kondisi End true Statement yang diulang iterasi
Contoh-contoh “for” Program untuk menuliskan teks “Java Programming” sebanyak 10 kali. class DemoFor1 { public static void main (String[] args) { for (int i=0; i<10; i++) { System.out.println("Java"); } class DemoFor1 { public static void main (String[] args) { for (int i=10; i>0; i--) { System.out.println("Java"); }
Contoh Program untuk menjumlahkan 5 bil. positif pertama class DemoFor3 { public static void main(String[] args) { int n = 5; // 5 bilangan positif pertama int hasil = 0; for (int i=1; i<=n; i++) { hasil = hasil + i; if (i != n) { System.out.print(i + " + "); } else { System.out.print("= "); } System.out.println(hasil);
Program untuk menentukan apakah sebuah integer termasuk prima atau tidak. class DemoFor4 { public static void main(String[] args) { int bilangan = 7; boolean prima = true; for (int i=2; i <= (bilangan/2); i++) { if ((bilangan % i) == 0) { prima = false; break; // menghentikan pengulangan } if (prima) { System.out.println(bilangan + " merupakan bilangan prima"); } else { System.out.println(bilangan + " bukan bilangan prima");
Penggunaan koma dalam “for” Perhatikan program berikut : class DemoFor5 { public static void main(String[] args) { int j=4; for (int i=0; i < 5; i++) { System.out.println("Nilai i: " + i); System.out.println("Nilai j: " + j); System.out.println(); j--; }
Dapat disederhanakan sbb : class DemoFor6 { public static void main(String[] args) { int i,j; for (i=0, j=4; i < 5; i++, j--) { System.out.println("Nilai i: " + i); System.out.println("Nilai j: " + j); System.out.println(); }
Percabangan : while Formula : inisialisasi; while(kondisi) { //statement yang akan diulang iterasi; } Ekspresi? Statement ……. Salah Ke pernyataan sesudah while
Perulangan : do-while Formula : inisialisasi; do{ //statement yang akan diulang iterasi; }while(kondisi); Ekspresi? Statement ……. Salah Ke pernyataan sesudah while Benar
Latihan Ubahlah contoh perulangan dengan for pada slide sebelumnya dengan menggunakan mekanisme while dan do-while.
(1) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 3 4 5
(2) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 3 4 5
(3) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 12345
(4) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 11111 22222 33333 44444 55555
(5) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
(6) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 5 5 5 5 5 4 4 4 4 3 3 3 2 2 1
(7) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 5 5 5 5 5 4 4 4 4 3 3 3 2 2 1
(8) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
Deskripsi Array Array : Sekumpulan variabel bertipe sama yang diacu dengan nama yang sama. Ilustrasi sebuah array bernama A berisi 5 elemen A[0] A[1] A[2] A[3] A[4] 10 15 21 12 30
Array Satu Dimensi Cara pendeklarasian : atau Langkah-langkahh pembuatan : Deklarasi variabel array, contoh : int [] jmlHari; Tentukan jumlah elemen : jmlHari = new int[12]; Pengisian array, contoh : jmlHari[0] = 31; tipe namaArray[] tipe [] namaArray
Contoh class DemoArray1D { public static void main(String[] args) { // mendeklarasikan variabel bertipe array dengan tipe int int [] jumlahHari; // menentukan jumlah elemen array jumlahHari = new int[12]; // mengisikan nilai dari setiap elemen array yang ada jumlahHari[0] = 31; jumlahHari[1] = 28; jumlahHari[2] = 31; jumlahHari[3] = 30; jumlahHari[4] = 31; jumlahHari[5] = 30; jumlahHari[6] = 31; jumlahHari[7] = 31; jumlahHari[8] = 30; jumlahHari[9] = 31; jumlahHari[10] = 30; jumlahHari[11] = 31; // menampilkan salah satu elemen array System.out.println("Bulan Maret memiliki " + jumlahHari[2] + " hari."); }
Array Multi Dimensi Array multi dimensi ~ Array of array Array dua dimensi : atau Array tiga dimensi : tipe namaArray[][]; tipe [][] namaArray; tipe namaArray[][][]; tipe [][][] namaArray;
Contoh class DemoArray2D { public static void main(String[] args) { int[][] duaD = new int[2][3]; int k = 1; for(int i=0; i<2; i++) { for (int j=0; j<3; j++) { duaD[i][j] = k * 10; System.out.print(duaD[i][j]); if (j < 2) System.out.print(" "); k++; } System.out.println();
Latihan Buatlah array untuk menyimpan data {1,2,3,4,5,6,7,8,9,10} dan tuliskan elemen ke 2 dan 5. Buatlah array untuk menyimpan data {k,i,l,a,n,g} dan tampilkan huruf ‘k’ dan ‘g’. Buatlah array untuk menyimpan data {{1,70},{2,85},{3,90},{4,75},{5,85}} dan tampilkan ke layar tulisan : Nilai 1 = 70 Nilai 2 = 85 Nilai 3 = 90 Nilai 4 = 75 Nilai 5 = 85
Buatlah program yang akan membaca 10 angka dari user untuk dimasukkan ke array. Selanjutnya tampilkan elemen pertama dan terakhir ke layar. Buatlah program yang akan membaca 10 angka dari user untuk dimasukkan ke array. Selanjutnya hitunglah rata-rata dari seluruh angka tsb & tampilkan hasilnya ke layar. Buatlah program yang akan membaca 10 angka dari user untuk dimasukkan ke array. Selanjutnya mintalah user memasukkan sebuah angka lagi. Carilah angka tsb pada array. Jika ada tampilkan ke layar indeks lokasinya, jika tidak ada tampilkan “Angka tidak ditemukan.”
Reference Dari berbagai sumber Design : freeppttemplates.net