Bab 27. Sinkronisasi Dengan Semafor
|
|
- Ratna Budiman
- 7 tahun lalu
- Tontonan:
Transkripsi
1 Bab 27. Sinkronisasi Dengan Semafor Pendahuluan Sinkronisasi dua arah adalah suatu mekanisme dimana suatu thread dapat mengendalikan sinkronisasi thread lain, begitu pula sebaliknya. Berikut ini adalah sebuah program yang menggunakan proses sinkronisasi dua arah. Program yang dibuat dalam bahasa Java ini, bernama Hompimpah. Contoh program sinkronisasi dua arah adalah semafor berjenis non-spinlock. Semafor jenis non-spinlock mengimplementasikan kelas Semafor, dimana semafor yang digunakan adalah jika ada proses yang sedang berjalan, maka proses lain akan menunggu, sampai ada thread lain yang memanggilnya. Hal ini sesuai dengan prinsip critical section yaitu mutualy exclusive, hanya satu thread yang diizinkan mengakses critical section; progress, critical section pasti ada yang mengakses; bounded waiting, setiap thread dijamin dapat meng-akses critical section. Hal ini dapat dilihat dalam program yaitu ketika sang bandar sedang berada pada critical section, pemain akan menunggu hingga bandar selesai mengaksesnya. Sedangkan kebalikannya adalah semafor jenis spinlock, yang akan melakukan infinite loop, sehingga thread tersebut tidak ada jaminan akan masuk critical section. Semafor jenis non-spinlock ini terdiri dari 2 operasi untuk proses sinkronisasi, yaitu operasi buka(),dan operasi kunci() Penggunaan Semafor Program ini berjalan layaknya permainan Hompimpah yang telah kita kenal. Adapun yang dilakukan dalam permainan hompimpah adalah sebagai berikut: 1. Peranan Gambar Peranan yang terdapat dalam permainan Dalam permainan Hompimpah kita mengenal dua peranan, yaitu pemain-pemain yang melakukan hompimpah (gambar sebelah kanan yang berjumlah 5) dan seorang bandar (gambar sebelah kiri), yang berfungsi menetukan, kapan permainan dimulai dan kapan permainan berakhir. Dalam hal ini bandar bertindak sebagai pengatur jalannya permainan. 2. Memulai permainan Gambar Bandar memulai permainan
2 Permainan mulai ketika bandar menyerukan Hompimpah. Ketika itu bandar akan meminta pemain untuk melakukan hompimpah satu per satu(tidak serentak). Dalam program ini, pemain tidak gambreng secara bersamaan seperti gambreng pada umumnya, melainkan satu per satu dengan pengaturan dari Semafor.Kemudian bandar akan menyerukan gambreng sebagai penanda hompimpah berhenti, sehingga pemain pun menghentikan hompimpah dan masing-masing akan menunjukan tangannya, apakah telapak atau punggung. 3. Pengecekan pemenang Gambar Bandar memeriksa pemenang Terlihat pada gambar, setelah bandar menyerukan gambreng dan hompimpah berhenti, bandar akan melakukan perhitungan banyaknya telapak dan punggung. Apabila bandar menemukan ada diantara telapak atau punggung yang berjumlah satu, maka satu-satunya pemain itu akan keluar sebagai pemenang. Namun apabila tidak ada diantara telapak atau punggung yang berjumlah satu, seperti pada gambar maka bandar akan mengulang permainan dengan menyerukan gambreng. Hal tersebut akan berulang terus-menerus hingga terdapat 1 tangan yang berbeda Dengan kata lain, bandar akan terus menyerukan gambreng dan mengulang permainan hingga menemukan pemenang. Gambar Bandar mengulang gambreng Seperti halnya permainan Hompimpah yang diilustrasikan di atas, program Hompimpah juga berjalan demikian layaknya permainan Hompimpah sebenarnya. Tetapi, ada perbedaan terhadap jumlah bandarnya. Program Hompimpah memiliki jumlah bandar yang sama dengan jumlah pemainnya, sehingga setiap pemain memiliki satu bandar. Adapun tujuan sinkronisasi dua arah adalah mengendalikan thread-thread sesuai dengan keinginan kita melalui kendali bandargambreng() yang diimplementasikan pada program Hompimpah Program Contoh Program yang menggunakan proses sinkronisasi dua arah 001 public class Hompimpah 002 { private static final int JUMLAH_PEMAIN=6; 005 public static void main(string args[])throws Exception 006 { 007 Gambreng gamserver=new Gambreng(JUMLAH_PEMAIN); 008 Thread[] pemain=new Thread[JUMLAH_PEMAIN]; 009 for (int ii=0; ii<jumlah_pemain; ii++) 010 {
3 011 pemain[ii]= new Thread (new Pemain(gamserver, ii)); 012 pemain[ii].start(); } 015 gamserver.bandargambreng(); 017 } } class Pemain implements Runnable 022 { 023 Pemain(Gambreng gserver, int nomer) 024 { 025 gamserver=gserver; 026 no_pemain=nomer; 027 } public void run() 030 { 031 gamserver.pemaingambreng(no_pemain); 032 } private Gambreng gamserver; 035 private int no_pemain; } class Gambreng 040 { 041 private boolean adapemenang; 042 private int truepemain, truecount, iterasigambreng; 043 private int falsepemain, falsecount; 044 private int nomorpemenang, jumlahpemain; 045 private Semafor[] bandar, pemain; 046 private Semafor mutex; public Gambreng(int jumlah) 049 { 050 bandar=new Semafor[jumlah]; 051 pemain=new Semafor[jumlah]; 052 for(int ii=0; ii<jumlah;ii++) 053 { 054 bandar[ii]=new Semafor(); 055 pemain[ii]=new Semafor(); } mutex=new Semafor(1); 061 jumlahpemain=jumlah; 062 iterasigambreng=0; 063 resetgambreng(); 064 } 065 public void bandargambreng() 066 { 067 syncbandar(); 068 while(!menanggambreng()) 069 { 070 resetgambreng(); 071 syncpemainbandar();
4 072 hitunggambreng(); 073 iterasigambreng++; 074 } 075 syncpemain(); 076 System.out.println("Nomor Peserta Pemain [0] - ["+ (jumlahpemain-1)+"] Pemenang Pemain nomor["+ nomorpemenang +"] Jumlah Iterasi["+ iterasigambreng +"]"); 077 } 078 public void pemaingambreng (int nomor) 079 { 080 syncbandarpemain(nomor); 081 while(!menanggambreng()) 082 { 083 mutex.kunci(); if((int)(math.random()*2)==1) 086 { 087 truepemain=nomor; 088 truecount++; } 091 else 092 { 093 falsepemain=nomor; 094 falsecount++; 095 } 096 mutex.buka(); 097 syncbandarpemain(nomor); 098 } 099 } 100 public void resetgambreng() 101 { 102 mutex.kunci(); 103 adapemenang=false; 104 truepemain=0; 105 truecount=0; 106 falsepemain=0; 107 falsecount=0; mutex.buka(); 110 } private boolean menanggambreng() 113 { 114 return adapemenang; 115 } 116 private void hitunggambreng() 117 { 118 mutex.kunci(); if(truecount==1) 121 { 122 adapemenang=true; 123 nomorpemenang=truepemain; 124 } 125 else if(falsecount==1) 126 { 127 adapemenang=true; 128 nomorpemenang=falsepemain;
5 129 } 130 mutex.buka(); 131 } 132 private void syncpemainbandar() 133 { 134 for(int ii=0; ii<jumlahpemain;ii++) 135 { 136 pemain[ii].buka(); 137 bandar[ii].kunci(); 138 } 139 } private void syncbandar() 142 { 143 for(int ii=0;ii<jumlahpemain;ii++) 144 { 145 bandar[ii].kunci(); 146 } 147 } 148 private void syncpemain() 149 { 150 for(int ii=0;ii<jumlahpemain;ii++) 151 { 152 pemain[ii].buka(); 153 } 154 } 155 private void syncbandarpemain(int ii) 156 { 157 bandar[ii].buka(); 158 pemain[ii].kunci(); 159 } } class Semafor 165 { 166 public Semafor() 167 { 168 value=0; 169 } 170 public Semafor(int val) 171 { 172 value=val; 173 } 174 public synchronized void kunci() 175 { 176 while(value==0) 177 { 178 try 179 { 180 wait(); } 183 catch(interruptedexception e) 184 { 185 } 186 value--; 187 }
6 } 190 public synchronized void buka() 191 { 192 value++; 193 notify(); 194 } 195 private int value; 196 } Penjelasan Program Program Hompimpah terdiri dari 4 class yaitu class Hompimpah, class Pemain, class Gambreng,class Semafor. Masing-masing class berfungsi sebagai berikut: 1. Class Hompimpah: dalam kelas ini program Hompimpah dapat dijalankan 2. Class Gambreng: dalam kelas ini seluruh proses permainan Hompimpah dijalankan. 3. Class Semafor: kelas ini menjalankan proses sinkronisasi. 4. Class Hompimpah: dalam kelas terdapat fungsi run() dengan fungsi ini tiap-tiap pemain akan dihidupkan. Penjelasan selengkapnya sebagai berikut: Contoh Class Hompimpah 001 public class Hompimpah 002 { private static final int JUMLAH_PEMAIN=6; 005 public static void main(string args[])throws Exception 006 { 007 Gambreng gamserver=new Gambreng(JUMLAH_PEMAIN); 008 Thread[] pemain=new Thread[JUMLAH_PEMAIN]; 009 for (int ii=0; ii<jumlah_pemain; ii++) 010 { 011 pemain[ii]= new Thread (new Pemain(gamserver, ii)); 012 pemain[ii].start(); } 015 gamserver.bandargambreng(); 017 } } 020 Pada class Hompimpah, dibuat objek baru dari class Gambreng (baris 7), dimana dalam kelas tersebut dibuat 2 jenis thread yaitu thread bandar dan thread pemain. Masing-masing thread adalah array dari objek Semafor, yang berkapasitas JUMLAH_PEMAIN, yaitu 6. Kemudian kedua jenis thread di set value-nya sebagai 0 (terdapat pada class Gambreng). Hal ini mengindikasikan bahwa thread bandar dan pemain sedang tidur. Dalam kelas Gambreng, mutex sebagai objek dari class Semafor, di set 1,yang berarti bahwa critical section sedang dalam keadaan available atau tidak ada thread yang sedang memakai. Kemudian iterasigambreng di set 0 dan pemanggilan method resetgambreng() pada class Gambreng sebagai penanda awal permainan Pada baris ke 8 class Hompimpah dibuat array object baru dari class Thread yaitu pemain sebanyak JUMLAH_PEMAIN yang di set 6. Tiap-tiap thread memiliki no_pemain dan memiliki objek dari class Gambreng. Selanjutnya thread- thread tersebut menjalankan method run()-nya, dimana dalam method tersebut tiap-tiap thread pemain mengirimkan nomornya untuk diakses dalam method pemaingambreng(int) yang berada pada class Gambreng.
7 Contoh method pemaingambreng 078 public void pemaingambreng (int nomor) 079 { 080 syncbandarpemain(nomor); 081 while(!menanggambreng()) 082 { 083 mutex.kunci(); if((int)(math.random()*2)==1) 086 { 087 truepemain=nomor; 088 truecount++; } 091 else 092 { 093 falsepemain=nomor; 094 falsecount++; 095 } 096 mutex.buka(); 097 syncbandarpemain(nomor); 098 } 099 } 100 public void resetgambreng() 101 { 102 mutex.kunci(); 103 adapemenang=false; 104 truepemain=0; 105 truecount=0; 106 falsepemain=0; 107 falsecount=0; mutex.buka(); 110 } 111 Pada fungsi tersebut tiap-tiap thread akan mengakses critical section secara bergantian, sesuai dengan prinsip mutual exclusion. Di dalam critical section, thread-thread akan dicek apakah truepemain(telapak) atau falsepemain(punggung) kemudian dihitung berapa jumlah telapak dan punggungnya. Proses ini akan terus me-loop sampai ada pemenang. Sebelum memasuki critical section dan melakukan pengecekan, sistem melakukan proses sinkronisasi bandar dan pemain, dengan memangil fungsi syncbandarpemain() Contoh syncbandarpemain 155 private void syncbandarpemain(int ii) 156 { 157 bandar[ii].buka(); 158 pemain[ii].kunci(); 159 } 160 dalam fungsi tersebut bandar melepaskan kunci, dan memanggil thread pemain dengan notify() yang merupakan bagian dari fungsi buka() dari class Semafor, untuk kemudian thread tersebut dapat mengakses critical section. Setelah seluruh thread pemain mengakses critical section dan melakukan pengecekan, program memanggil fungsi bandargambreng() pada class Gambreng,untuk melakukan proses sinkronisasi bandar yaitu memanggil fungsi syncbandar()
8 Contoh syncbandar 141 private void syncbandar() 142 { 143 for(int ii=0;ii<jumlahpemain;ii++) 144 { 145 bandar[ii].kunci(); 146 } 147 }, sehingga bandar terkunci dalam critical section dan memegang kekuasaan dalam Gambreng untuk melakukan perulangan fungsi-fungsi berikut, yang masing-masing akan dipanggil dalam fungsi bandargambreng() : 1. Me-reset permainan gambreng dengan memanggil fungsi resetgambreng(). Contoh resetgambreng 100 public void resetgambreng() 101 { 102 mutex.kunci(); 103 adapemenang=false; 104 truepemain=0; 105 truecount=0; 106 falsepemain=0; 107 falsecount=0; mutex.buka(); 110 } 111 Dalam fungsi resetgambreng(), truepemain, falsepemain, truecount dan falsecount = 0, kemudian ada pemenang diset false, sebagai tanda awal dari permainan. 2. Melakukan sinkronisasi pemain dan bandar dengan memanggil fungsi syncpemainbandar(). Contoh syncpemainbandar 132 private void syncpemainbandar() 133 { 134 for(int ii=0; ii<jumlahpemain;ii++) 135 { 136 pemain[ii].buka(); 137 bandar[ii].kunci(); 138 } 139 } Ketika melakukan pemanggilan fungsi ini, seluruh pemain dibangunkan kemudian tiap-tiap bandar akan tidur. Dengan fungsi ini, bandar akan tetap menunggu sampai semua pemain membangunkannya. Dan ketika bandar bangun, pemain akan ditidurkan kembali. 3. Melakukan penghitungan dengan fungsi hitunggambreng() Contoh hitunggambreng 116 private void hitunggambreng() 117 { 118 mutex.kunci(); if(truecount==1) 121 {
9 122 adapemenang=true; 123 nomorpemenang=truepemain; 124 } 125 else if(falsecount == 1) 126 { 127 adapemenang=true; 128 nomorpemenang=falsepemain; 129 } 130 mutex.buka(); 131 } Dengan fungsi ini, kembali melakukan pengaksesan variable. Dengan melakukan pengecekan, apabila salah satu diantara truecount atau falsecount bernilai 1, maka adapemenang. Nilai ini akan diproses oleh fungsi menanggambreng(), yang akan mengembalikan nilai boolean(true atau false). Jika fungsi tersebut bernilai true maka proses loop berhenti. 4. Menghitung iterasi perulangan, sampai fungsi menanggambreng() mengembalikan nilai true, yang menandakan adanya pemenang. Saat proses perulangan berhenti, pemain melepaskan kunci kemudian sistem menampilkan output saat execute, berupa no_pemain yang keluar sebagai pemenang. Setiap proses execute akan menampilkan nomor pemain yang berbeda-beda, karena proses random dan urutan pengaksesan critical section oleh thread pada tiap pengexecute-an berbeda-beda. Contoh Keluaran Program Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[3] Jumlah Iterasi[12] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[2] Jumlah Iterasi[1] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[0] Jumlah Iterasi[6] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[4] Jumlah Iterasi[2] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[1] Jumlah Iterasi[14] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[3] Jumlah Iterasi[9] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[5] Jumlah Iterasi[3] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[3] Jumlah Iterasi[2] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[4] Jumlah Iterasi[5] Nomor Peserta Pemain [0] - [5] Pemenang Pemain nomor[0] Jumlah Iterasi[11] Contoh di atas menunjukkan hasil Hompimpah tidak selalu sama. Jumlah iterasi menunjukkan berapa kali bandar menyerukan gambreng dan mengulang permainan Rangkuman Program Hompimpah merupakan ilustrasi dimana sebuah thread memegang kendali sinkronisasi thread lainnya. Seperti yang dijelaskan dalam program masing-masing dari pemain saling mengendalikan satu sama lain, dengan menggunakan alat sinkronisasi yang bernama semafor. Semafor dalam program adalah semafor buatan berupa class Semafor yang dibuat dalam bahasa Java. Adapun di dalamnya terdapat 2 fungsi yaitu fungsi buka() dan fungsi kunci() dengan fungsi-fungsi inilah masing-masing thread dapat mengendalikan satu sama lain Rujukan [Silberschatz2005] Avi Silberschatz, Peter Galvin, dan Grag Gagne Operating Systems Concepts. Seventh Edition. John Wiley & Sons.
10 Appendix Penjelasan Alur Program 1. Mula - mula semua bandar dan pemain tidur 2. Dibuat thread Pemain sebanyak JUMLAH_PEMAIN yang kemudian akan menjalankan run() secara terpisah. 3. Setiap thread Pemain yang memanggil pemaingambreng akan terhambat pada method syncbandarpemain(nomor), ketika semua pemain sudah menjalankan method ini, semua bandar dalam keadaan bangun(buka). 4. bandargambreng (baris 15) dijalankan 5. Karena syncpemainbandar() dijalankan maka thread Pemain yang tadinya terhambat dapat jalan. 6. Setelah semua Pemain sudah gambreng (yang kemudian akan terhambat di syncbandarpemain(nomor) di bawah), maka akan hitunggambreng(). 7. Jika!MenangGambreng, Pemain akan di buka lagi. 8. Jika MenangGambreng, keluar dari loop dan di print hasilnya.
Bab 26. Readers/Writers
Bab 26. Readers/Writers Achmad Hariyadi 0606031433 Indra Firmancahya 0606101502 Komentar Umum: Secara umum bab ini sudah menjelaskan tentang readers/writers bahwa semafor tetap akan digunakan dalam program
Lebih terperinciBab 19. Solusi Critical Section
Bab 19. Solusi Critical Section Anggota Kelompok (A) Dwi Priyanto 0606101295 (B) Nico Anandito 0606101793 (B) Sactio Swastioyono 0606101944 Komentar Umum Bab ini membahas tentang cara kerja solusi untuk
Lebih terperinciKelompok 12. Thread Java
Kelompok 12 Thread Java Anggota Kelompok Irene Ully Havsa (0606101515 / Kelas B) Mario Ray Mahardika (0606101686 / Kelas A) Salman Salsabila (0606031566 / Kelas B) Komentar umum Secara umum, bab 12 membahas
Lebih terperinciBAB 4. SINKRONISASI & DEADLOCK
BAB 4. SINKRONISASI & DEADLOCK Sinkronisasi Perangkat Keras dan Semafor Oleh Muhammad Irfan Nasrullah Email : ewoh@gawab.com 1 Sinkronisasi Perangkat Keras Mengapa perlu sinkronisasi perangkat keras? 2
Lebih terperinciDEADLOCK & ALGORITMA OSTRICH
DEADLOCK & ALGORITMA OSTRICH DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Pengampu Bapak Adi Sucipto, Ir., M.Kom. oleh : Damas Fahmi Assena NIM : 161240000500 PROGRAM STUDI TEKNIK INFORMATIKA
Lebih terperinciMengunci sebuah object: Untuk memastikan bahwa hanya satu thread yang mendapatkan hak akses kedalam method tertentu
Sinkronisasi Mengapa menggunakan sinkronisasi threads? Bagaimanapun juga sebuah thread yang berjalan bersama-sama kadang-kadang membutuhkan resource atau method dari luar Butuh untuk berkomunikasi satu
Lebih terperinciSinkronisasi dan Deadlock Sistem Operasi
Sinkronisasi dan Deadlock Sistem Operasi Muhammad Iqbal Jurusan Sistem Komputer Fakultas Ilmu Komputer Universitas Sriwijaya Email:qiodaimi@gmail.com ABSTRAK Saat menggunakan komputer, notebook, netbook
Lebih terperinciREVIEW DAN REVISI BUKU
REVIEW DAN REVISI BUKU Anggota Kelompok Fani Jasmine Bahar(0606101326, Kelas B) Fatimah(0606104246, Kelas A) Muhammad Ghafur AWS(0606031515, Kelas B) Winda Sagita (0606104353, Kelas A) Komentar Umum Bab
Lebih terperinciPemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.
Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs. Thread adalah sebuah pengontrol aliran program dengan menggunakan kendali tunggal. Suatu proses dikontrol oleh paling sedikit satu thread.
Lebih terperinci2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.
Waktu Sisa : 2:14:53 1. Dari pilihan berikut ini, item manakah yang memiliki atribut dan behaviour? object class attribute data type method behavior 2. Pilih instruksi yang dapat digunakan dalam method
Lebih terperinciPERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM
PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM 1. Praktikan memahami perbedaan objek dan class pada Java. 2. Praktikan memahami konsep berorientasi objek. 3. Praktikan dapat membuat program sederhana dengan
Lebih terperinciBAB 2 COLLECTION & THREAD
BAB 2 COLLECTION & THREAD 2.1 Pendahuluan Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak, untuk itu dibutuhkan suatu manajemen
Lebih terperinciMonitor. Process Synchronization. SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6. Johny Moningka
Monitor SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6 Johny Moningka (moningka@cs.ui.ac.id) Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Process Synchronization Background
Lebih terperinciPada pembuatan game di java, sering kali para programer. mendefinisikan banyak object seperti suara, gambar, dan grafik geometri yang
BAB 2 COLLECTION & THREAD 2.1 Pendahuluan Pada pembuatan game di java, sering kali para programer mendefinisikan banyak object seperti suara, gambar, dan grafik geometri yang begitu banyak, untuk itu dibutuhkan
Lebih terperinciLaporan Tugas Scheduling Pengantar Sistem Operasi
Laporan Tugas Scheduling Pengantar Sistem Operasi Kelas E Anggota Kelompok: Cindy Alicia Sahara (5214100172) Ratih Kinanti A (5214100174) Patricia Hanna S (5214100177) Indriarti Kusumanita (5214100178)
Lebih terperinciCRITICAL REGIONS DAN MONITORS
CRITICAL REGIONS DAN MONITORS Oleh Sergio (1203001052) - Tedi Kurniadi (1203001109) - Copyright 2004 Sergio - Tedi Kurniadi silahkan menggunakan, memodifikasi,
Lebih terperinciAplikasi Graf dalam Pendeteksian Deadlock
Aplikasi Graf dalam Pendeteksian Deadlock Tina Yuliani Ayuningsih NIM : 13505057 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail : if15057@students.if.itb.ac.id
Lebih terperinciint i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }
I. Bahan Kajian 1. Perulangan (Iterasi) Perulangan(iterasi), menyatakan bahwa suatu instruksi tertentu akan diulang sampai tercapai kondisi tertentu, tanpa kita harus menulis perintah tersebut secara berulang.
Lebih terperinci1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?
1 of 14 2/21/2008 2:34 PM Waktu Sisa : 0:43:58 1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar? 2 of 14 2/21/2008 2:34 PM 2. Pernyataan manakah yang benar mengenai
Lebih terperinciBab 24. Diagram Graf Pendahuluan
Bab 24. Diagram Graf 24.1. Pendahuluan Berdasarkan penjelasan sebelumnya mengenai deadlock, diperlukan suatu penggambaran tentang bentuk deadlock. Dalam hal ini graf digunakan untuk merepresentasikan hal
Lebih terperinciPermainan Remi Sederhana
Permainan Remi Sederhana Permainan Remi ini dimainkan oleh n orang dan masing-masing menerima sebanyak m kartu. Nilai n dan m ini diinputkan oleh user. Pada permainan remi terdapat : KartuAcuan Masing-masing
Lebih terperinciPERTEMUAN VII Multithreaded Programming. Praktikan mampu membuat program sederhana mengenai threading
PERTEMUAN VII Multithreaded Programming TUJUAN PRAKTIKUM Praktikan mampu membuat program sederhana mengenai threading 7.1 Pengertian Multithreading dan Thread Multithreading adalah suatu kemampuan yang
Lebih terperinciILUSTRASI KLASIK: BOUNDED BUFFER
ILUSTRASI KLASIK: BOUNDED BUFFER Oleh kelompok 54.4: Reza Lesmana (1203000978) Suryamita Harindrari (1203001087) Fitria Rahma Sari (1203007034) Kritik dapat dikirimkan melalui rezalesmana@mhs.cs.ui.ac.id
Lebih terperinciPERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN
PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN Obektif: Praktikan mengetahui arra, percabangan, dan perulangan pada Java. Praktikan mengetahui bentuk umum
Lebih terperinciSekolah Tinggi Teknologi Adisutjipto Yogyakarta
Sekolah Tinggi Teknologi Adisutjipto Yogyakarta Materi Kuliah : Sistem Operasi / OS Semester Genap E.N. Tamatjita 1 Review Pertemuan Ke-7 Thread Bagian terkecil dari proses (program yang dieksekusi) yang
Lebih terperinciOperator, Statement kondisional, dan Iterasi pada Java
Operator, Statement kondisional, dan Iterasi pada Java Operator Operator Aritmatika Operator ini digunakan pada operasi-operasi aritmatika seperti penjumlahan, pengurangan, pembagian dll. Jenis Operator
Lebih terperinciMembuat dan Menggunakan Class
Pertemuan 3 Halaman 1/1 Membuat class pada java : Untuk mendefinisikan suatu class pada java digunakan : class ClassName { suatu class dapat terdiri dari - attribute / data field - method Attribute Attribute
Lebih terperinciJobsheet 09. Overloading and Overriding Method
Jobsheet 09 Overloading and Overriding Method 1. Kompetensi Setelah menempuh pokok bahasan ini, mahasiswa mampu : 1) Memahami konsep overloading dan overriding, 2) Memahami perbedaan overloading dan overriding,
Lebih terperinciObyektif : KONTROL ALUR PROGRAM
KONTROL ALUR PROGRAM Obyektif : 1. Mengetahui dan memahami tentang percabangan (seleksi) 2. Mengetahui dan memahami tentang perulangan (iterasi) 3. Dapat membuat program tentang control alur program PERCABANGAN
Lebih terperinci1. Latar Belakang Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak,
1. Latar Belakang Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak, untuk itu dibutuhkan suatu manajemen yang menangani hal
Lebih terperinciPENANGANAN EKSEPSI. class Exc0 { public static void main (String args[]) { int d = 0; int a = 42 / d; } }
PENANGANAN EKSEPSI Eksepsi adalah keadaan tidak normal yang muncul pada suatu bagian program pada saat dijalankan. Penanganan eksepsi pada java membawa pengelolaan kesalahan program saat dijalankan kedalam
Lebih terperinciPerulangan / Looping
PEMROGRAMAN DASAR Sistem Informasi PTIIK UB Semester Ganjil 2013/2014 Perulangan / Looping Dr. Eng. Herman Tolle, ST., MT Program Teknologi Informasi & Ilmu Komputer, Universitas Brawijaya 7 Aspek Dasar
Lebih terperinciThe Critical Section Problem Algorithm III
The Critical Section Problem Algorithm III Di dalam suatu sistem terdapat n proses yang saling bersaing untuk menggunakan data. Masing-masing proses tersebut mempunyai kode segmen yang disebut Critical
Lebih terperinciPEMOGRAMAN JAVA. Yoannita, S.Kom. Class(ii) [Constructor] [keyword this] Modifier Passing parameter [by value] [by references]
PEMOGRAMAN JAVA Yoannita, S.Kom Class(ii) [Constructor] [keyword this] Modifier Passing parameter [by value] [by references] Class Dalam pendefinisian class, dituliskan : class { *
Lebih terperinciTHREADS PADA WINDOWS Julius Bata /
THREADS PADA WINDOWS Julius Bata / 309012 THREADS Threads dapat dikatakan sebagai suatu atau beberapa kegiatan dalam suatu proses. Threads merupakan unit terkecil dari suatu proses yang dapat dijadwalkan
Lebih terperinciMetode Binnary Searching di Java Console
Metode Binnary Searching di Java Console Oleh: Yudi Setiawan Dalam pemrograman, pencarian data merupakan suatu hal yang sangat gampang dilakukan. Anda sebagai programmer bisa menggunakan beberapa teknik
Lebih terperinciBab 22. Perangkat Sinkronisasi II
Bab 22. Perangkat Sinkronisasi II kelompok 113.22 Femphy Pisceldo 1204000335 Hendra Dwi Hadmanto 1204000416 Zoni Yuki Haryanda 1204000955 Sebagian dibuat dengan SoftWare Bayar yang dibajak (MS. PowerPoint),
Lebih terperinciVariabel dengan tipe dasar hanya dapat menyimpan sebuah nilai
Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai 5 buah nilai dengan tipe yang sama dapat saja disimpan dalam 5 buah variabel, tetapi bagaimana dengan 100 nilai? Disimpan dengan 100 variabel?
Lebih terperinciJava Progamming Multithreading
Java Progamming Multithreading Disampaikan pada mata kuliah Object Oriented Programming Eddy Muntina Dharma,ST,MT Jurusan Teknik Informatika STT Telkom aguseddy@stttelkom.ac.id Konsep Dasar Multitasking
Lebih terperinciThread. 16 th week Estu Sinduningrum ST,MT
Thread 16 th week Estu Sinduningrum ST,MT Multitasking dan Multithreading Multitasking Multitasking adalah suatu istilah yang menjelaskan bahwa sebuah komputer dapat menjalankan bebeiapa aktiviias (yang
Lebih terperinciBab 10. Konsep Proses
Bab 10. Konsep Proses 10.1. Pendahuluan Proses didefinisikan sebagai program yang sedang dieksekusi. Menurut Silberschatz proses tidak hanya sekedar suatu kode program ( text section), melainkan meliputi
Lebih terperinciTHREADS WINDOWS : PEMBUATAN, PENJADWALAN DAN SINKRONISASI Julius Bata Magister Ilmu Komputer Universitas Gadjah Mada
THREADS WINDOWS : PEMBUATAN, PENJADWALAN DAN SINKRONISASI Julius Bata Magister Ilmu Komputer Universitas Gadjah Mada juliusbata@gmail.com Abtraksi Sistem operasi bertugas untuk melakukan manajemen proses.
Lebih terperinciApa yang akan dipelajari?
Concurrency: Mutual Exclusion dan Sinkronisasi (Pertemuan ke-8) Pendahuluan Apa yang akan dipelajari? Ruang lingkup concurrency Contoh kasus perlunya concurrency Jenis interaksi antar proses Mekanisme
Lebih terperinciLAPORAN PRAKTIKUM PEMROGRAMAN DASAR TIPE-TIPE FUNGSI ATAU METHOD
LAPORAN PRAKTIKUM PEMROGRAMAN DASAR TIPE-TIPE FUNGSI ATAU METHOD Disusun oleh : Nama : Ach Fauzan NIM : 135150201111002 Asisten 1 : Fadel Trivandi Dipantara Asisten 2 : Karid Nurvenus Asisten 3 : Apiladosi
Lebih terperinciE-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom
E-Book PEMROGRAMAN BERORIENTASI OBJEK Disusun Oleh: Arfian Hidayat, S.Kom http://arfianhidayat.com FAKULTAS ILMU KOMPUTER UNIVERSITAS DIAN NUSWANTORO SEMARANG 2013 Daftar Isi Daftar Isi... i Daftar Gambar...
Lebih terperinciPEMROGRAMAN SOCKET LANJUTAN
Praktikum 11 PEMROGRAMAN SOCKET LANJUTAN A. TUJUAN PEMBELAJARAN 1. Siswa memahami konsep aplikasi client server di jaringan. 2. Siswa memahami konsep pemprograman socket lanjut. 3. Siswa mampu melakukan
Lebih terperinciThe Critical Section Problem Algorithm III. Muhammad Fikry Hazmi (143) Kresna Ridwan (145) Guntur Kondang Prakoso (153)
The Critical Section Problem Algorithm III Muhammad Fikry Hazmi (143) Kresna Ridwan (145) Guntur Kondang Prakoso (153) Definisi Critical Section adalah bagian dari suatu proses yang akan melakukan akses
Lebih terperinciBAB 3 TYPE DATA, VARIABLE DAN OPERATOR
BAB 3 TYPE DATA, VARIABLE DAN OPERATOR Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman
Lebih terperinciKENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.
KENDALI PROSES Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan. PERINTAH KONDISIONAL Pemrograman Java memiliki 2 Decision-making
Lebih terperinciBAB IX THREAD Thread ClassThread namavar = new ClassThread(); Namavar.start(); New ClassThread().start();
BAB IX THREAD Thread merupakan kemampuan yang disediakan oleh Java untuk membuat aplikasi yang tangguh, karena thread dalam program memiliki fungsi dan tugas tersendiri. Dengan adanya thread, dapat membuat
Lebih terperinciBAB VIII CLASS ABSTRACT & CLASS INTERFACE. //abstract class bisa, kelas biasa bisa System.out.println("Ini nama");
BAB VIII CLASS ABSTRACT & CLASS INTERFACE A. ABSTRACT CLASS class merupakan sebuah kelas yang di dalamnya bisa terdapat method abstract dan method biasa. Method abstract adalah method yang tidak memiliki
Lebih terperinciBAB V PENYELEKSIAN KONDISI DAN PERULANGAN
BAB V PENYELEKSIAN KONDISI DAN PERULANGAN Untuk menghasilkan suatu program, sangat penting untuk mengatur agar program dapat berjalan dengan aliran atau susunan yang baik, sehingga dapat memecahkan masalah
Lebih terperinciException Handling and Multithreading
Pertemuan 7 Halaman 1/1 Pengertian Exception Suatu program apabila mengalami kesalahan akan menghasilkan suatu runtime errors seperti gagal membuka file, suatu program melakukan akses diatas range array
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 16 SINGLE LINKED LIST 2 A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep SingleLinkedList untuk menghapus sebuah node 2. Memahami konsep SingleLinkedList untuk mencari index
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
42 BAB IV IMPLEMENTASI DAN PENGUJIAN 1.1 Implementasi. Pada bagian ini akan dijelaskan mengenai implementasi program, implementasi konektifitas Bluetooth dan pergerakan robot mobil pada sistem. Proses
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1)
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA LINKED LIST (BAGIAN 1) Deskripsi Singkat Struktur data array memang sederhana namun unsur-unsur pada array terkait rapat sehingga proses menggeser data di dalam
Lebih terperinciClass Thread juga menyediakan beberapa constants sebagai nilai prioritas. Tabel berikut ini adalah rangkuman dari class Thread.
Thread Programming di Java Thread merupakan kemampuan yang disediakan oleh Java untuk membuat aplikasi yang tangguh, karena thread dalam program memiliki fungsi dan tugas tersendiri. Dengan adanya thread,
Lebih terperinciBab 7. TiledLayer. Menyusun graphics dari TiledLayer dan di masukkan dalam LayerManager
Bab 7 TiledLayer 7.1 Tujuan Setelah mempelajari bab ini, Pelajar diharapkan mampu untuk : Memahami dan menggunakan class TiledLayer Menggambar dan menyusun TiledLayer Menyusun graphics dari TiledLayer
Lebih terperinciMODUL III ARRAYLIST TUGAS PENDAHULUAN
MODUL III ARRAYLIST TUGAS PENDAHULUAN 1. Jelaskan pengertian ArrayList? 2. Jelaskan perbedaan Array dan ArrayList? 3. Tuliskan contoh sintak ArrayList! 1. TUJUAN Mahasiswa dapat memahami konsep ArrayList
Lebih terperinciOperator dan Assignment
Operator dan Assignment Macam-macam Operator Arithmetic Op. : + - * / % Relational Op. : > >= < >>> Conditional Op.
Lebih terperinciPERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN
PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN Obyektif: Praktikan mengetahui array, percabangan, dan perulangan pada Java. Praktikan mengetahui bentuk umum dari array, percabangan, dan perulangan dalam
Lebih terperinciA. TUJUAN PEMBELAJARAN 1. Mengenal berbagai macam bentuk operator 2. Memahami penggunaan berbagai macam jenis operator yang ada di Java
PRAKTIKUM 3 OPERATOR A. TUJUAN PEMBELAJARAN 1. Mengenal berbagai macam bentuk operator 2. Memahami penggunaan berbagai macam jenis operator yang ada di Java B. DASAR TEORI Operator dapat diklasifikasikan
Lebih terperinciPEMOGRAMAN JAVA. Yoannita. Class(iii) [Constructor] [keyword this] Passing parameter [by value] [by references]
PEMOGRAMAN JAVA Yoannita Class(iii) [Constructor] [keyword this] Passing parameter [by value] [by references] Constructor Constructor merupakan method khusus yang berfungsi untuk inisialisi atau menciptakan
Lebih terperinciPEMROGRAMAN JAVA : THREAD
PEMROGRAMAN JAVA : THREAD Asep Herman Suyanto info@bambutechno.com http://www.bambutechno.com Thread merupakan kemampuan yang disediakan oleh Java untuk membuat aplikasi yang tangguh, karena thread dalam
Lebih terperinciBAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA
1 BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA IDENTIFIER Identifier adalah suatu tanda yang mewakili nama-nama variabel, method, class, dsb. Ingat : Bahasa
Lebih terperinci2.1 if Jenis-jenis Percabangan if adalah if, if else, If else if else if - else
I. Bahan Kajian Sebagai bahasa pemrograman, java memiliki cara untuk mengontrol alur eksekusi program bergantung pada kondisi yang telah ditetapkan Secara garis besar alur eksekusi ini dapat dikelompokan
Lebih terperinciAbstract Class dan Interface. Viska Mutiawani, M.Sc
Abstract Class dan Interface Viska Mutiawani, M.Sc Konsep Penting Abstract class Abstract method Interface Implements Final Static Exception Contoh Polimorfisme Lihat contoh program yang disediakan pada
Lebih terperinci2 TIPE DATA DAN VARIABEL
BAB 2 TIPE DATA DAN VARIABEL Kompetensi Dasar dan Indikator : Setelah mengikuti materi kuliah ini mahasiswa mampu menggunakan tipe data dan variable yang ada dalam Java, dengan indikator mahasiswa mampu:
Lebih terperinciNama : Putra Adi Nugraha dan Priska Kalista Kelas : B
Nama : Putra Adi Nugraha 0606104321 dan Priska Kalista 0606101842 Kelas : B Pada kesempatan kali ini, kami membahas bab 21 mengenai Transaksi Atomik. Adapun bab ini berbicara tenang sifat keatomikan suatu
Lebih terperinciPemrograman Berbasis Objek Operator dan Assignment
Operator dan Assignment Macam-macam macam Operator Arithmetic Op. : + - * / % Relational Op. : > >= < >>> Conditional
Lebih terperinciI. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.
I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java II. Bahan Kajian 1. Kelas(Class) Kelas adalah definisi umum (pola,
Lebih terperinciPertemuan 3 Struktur Perulangan pada Java
Pertemuan 3 Struktur Perulangan pada Java Objektif : 1. Mahasiswa dapat memahami konsep struktur kontrol perulangan dalam pemrograman. 2. Mahasiswa dapat menggunakan struktur kontrol perulangan (while,
Lebih terperinciBAB 2. Class Thread. Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi
2.1 Tujuan: BAB 2 Class Thread Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi 2.2 Mengenal Kelas Thread Salah satu fitur yang tertanam
Lebih terperinciBAB 3 ANALISIS DAN PERANCANGAN
BAB 3 ANALISIS DAN PERANCANGAN 3.1 Analisis Sistem yang Berjalan Sesuai dengan rekomendasi ICAO (International Civil Aviation Organization) pada tahun 2002 untuk memilih teknologi ADS-B sebagai prioritas
Lebih terperinciTUGAS PROGRAM DIAGONAL, VETIKAL, DAN HORIZONTAL OPENGL (MENGGUNAKAN JAVA) NAMA : SYIFA MUTIARA SARI KELAS : 3KA23 NPM :
TUGAS PROGRAM DIAGONAL, VETIKAL, DAN HORIZONTAL OPENGL (MENGGUNAKAN JAVA) NAMA : SYIFA MUTIARA SARI KELAS : 3KA23 NPM : 16115784 Untuk membuat program garis vertikal, horizontal, dan diagonal kita membutuhkan
Lebih terperinciGambar 1. Single Linked List
PRAKTIKUM 16 ITERATOR PADA SINGLE LINKED LIST A. TUJUAN PEMBELAJARAN Mahasiswa diharapkan mampu : 1. Memahami konsep Iterator pada SingleLinkedList 2. Mengimplementasikan konsep Iterator pada SingleLinkedList
Lebih terperinciIT210 Pemrograman Visual. Ramos Somya
IT210 Pemrograman Visual Ramos Somya Variabel adalah tempat untuk menyimpan data yang memiliki suatu tipe data. Variabel ini akan ditempatkan dalam suatu alamat memori pada komputer. C# mengharuskan setiap
Lebih terperinciArray Sebagai Parameter Method
Array Sebagai Parameter Method Penggunaan Elemen Array Sebagai Aktual Parameter 1. public class MP2 { 2. public static void main(string[] args) { 3. int nilai=10; 4. int[] listnilai={7,1,5,3}; 5. System.out.println("Sebelum
Lebih terperinciPengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.
Class & Objek Pengenalan OOP Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program. Object tersebut dikarakterisasi oleh property dan behavior. Pengenalan
Lebih terperinciPoliteknik Elektronika Negeri Surabaya
Politeknik Elektronika Negeri Surabaya PRAKTIKUM 28 BINARY SEARCH TREE 2 A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep menghapus node pada Binary Search Tree. Node yang dihapus adalah node
Lebih terperinciBAHASA PEMROGRAMAN JAVA
MI1274 Algoritma & Pemrograman Lanjut Genap 2015-2016 BAHASA PEMROGRAMAN JAVA Disusun Oleh: Reza Budiawan Untuk: Tim Dosen Algoritma & Pemrograman Lanjut Hanya dipergunakan untuk kepentingan pengajaran
Lebih terperinciif (ekspresi_boolean) { Pernyataan1; } else { Pernyataan2; }
PRAKTIKUM 4 PERCABANGAN DAN PERULANGAN A. TUJUAN PEMBELAJARAN 1. Memahami logika percabangan 2. Memahami logika perulangan 3. Memakai percabangan dan perulangan yang tepat 4. Memahami pemberian kondisi
Lebih terperinciSekarang, kita akan mencoba untuk menganalisa program Java pertama : public class Hello {
Sekarang, kita akan mencoba untuk menganalisa program Java pertama : /** * My first j ava program */ public static void main(string[] args) //menampilkan string Hello world pada layar System. out. println("hello
Lebih terperinciMenangkap Kesalahan (Error Handling)
Menangkap Kesalahan (Error Handling) Untuk membuat penangkap kesalahan ( error handler), Java menyediakan Class Exception. dengan adanya Exception ini, kesalahan tidak akan menyebabkan program keluar dari
Lebih terperinciIKG2I4 / Software Project I
IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 2 1 3/11/2015 WEEK 2 Class Driver Constructor Public vs private Get dan set
Lebih terperinciBAB 4 SPRITE. Contoh sebuah Sprite
BAB 4 SPRITE 4.1 PENGENALAN SPRITE Salah satu faktor yang membuat keberhasilan game adalah grafis yang unggul. Sebagian besar objek pada sebuah game dikategorikan sebagai grafis khusus yang disebut sprites.
Lebih terperinciEXCEPTION HANDLING. 1. Mampu menangani eksepsi 2. Mengetahui dan memahami tentang multithreading 3. Dapat membuat program tentang exception handling
EXCEPTION HANDLING Obyektif : 1. Mampu menangani eksepsi 2. Mengetahui dan memahami tentang multithreading 3. Dapat membuat program tentang exception handling PENANGANAN EKSEPSI Eksepsi adalah keadaan
Lebih terperinciLAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom
LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom BAB III DASAR-DASAR PEMROGRAMAN Tipe Data Data adalah sekumpulan kejadian/fakta yang dipresentasikan dengan huruf, angka,
Lebih terperinciOBJECT, CLASS DAN METHOD. 1. Mengetahui pengertian dari objek & class 2. Dapat membuat program sederhana dari java dengan menggunakna objek dan class
OBJECT, CLASS DAN METHOD Obyektif : 1. Mengetahui pengertian dari objek & class 2. Dapat membuat program sederhana dari java dengan menggunakna objek dan class Object dan Class class Dalam dunia nyata,
Lebih terperinciPercabangan & Perulangan
Struktur Dasar Java Percabangan & Perulangan Object-oriented Programming (OOP) with JAVA 2011/2012 Macam-macam Percabangan if (...) if ( ) else ( ) if ( ) else if ( ) else ( ) switch ( ) Percabangan :
Lebih terperinciPertemuan III [STRUKTUR KONTROL] CariGrade.java Program mencari grade nilai menggunakan struktur control if-else
Pertemuan III [STRUKTUR KONTROL] Materi : 1. Struktur kontrol if 2. Struktur kontrol if-else 3. Operator kondisi (?:) 4. Struktur kontrol switch 5. Struktur kontrol for 6. Struktur kontrol while 7. Struktur
Lebih terperinciMODUL 6 PERULANGAN. A. String. 1. Instansiasi dan Inisialisasi. M0601xxyyy.jar
MODUL 6 PERULANGAN Topik-topik yang dibahas pada modul ini adalah mengenai kelas String, kelas Random, dan konsep perulangan. Pertanyaan-pertanyaan yang dijawab dalam bentuk teks harus Anda kumpulkan dengan
Lebih terperinciBAB II VARIABEL DAN TIPE DATA
BAB II VARIABEL DAN TIPE DATA Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman dengan
Lebih terperinciTujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.
Modul 2 Percabangan dan Loop Tujuan : 1. Praktikan mengetahui macam macam percabangan pada Java 2. Praktikan mengetahui macam macam loop pada Java 3. Praktikan mampu memahami logika percabangan dan loop
Lebih terperinciIKG2I4 / Software Project I
IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 6 1 3/11/2015 WEEK 6 Abstract Class Interface Exception 2 3/11/2015 ABSTRACT
Lebih terperinciMODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK
MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK Deskripsi Singkat merupakan bentuk struktur data seperti tumpukan yang memiliki konsep Last In First Out (LIFO). Bermakna data yang terakhir masuk merupakan
Lebih terperinciCritical Section Mutual Exclusion Semaphore Tugas. Sinkronisasi Thread. Praktikum Sistem Operasi. Ilmu Komputer IPB. Sinkronisasi Thread
2017 Critical Section Critical Section A critical section is a section of code that can be executed by at most one process at a time. The critical section exists to protect shared resources from multiple
Lebih terperinciPertemuan 2 Struktur Kontrol Percabangan
Pertemuan 2 Struktur Kontrol Percabangan Objektif : 1. Mahasiswa dapat memahami konsep struktur kontrol percabangan dalam pemrograman. 2. Mahasiswa dapat menggunakan struktur kontrol pemilihan (if, else,
Lebih terperinciBab 13. Konsep Penjadwalan
* Anggota Kelompok - A 0606101912 Rifqi Fuadi - A 0606101906 Ridho Budiharto - B 0606101345 Faruk Candra Farabi Bab 13. Konsep Penjadwalan * Komentar Umum Penjadwalan merupakan bagian yang sangat menarik
Lebih terperinciDASAR PEMOGRAMAN JAVA
DASAR PEMOGRAMAN JAVA Pertemuan ke-2 Oleh: Winda Aprianti Tipe Data Bilangan Karakter Kata atau Kalimat Boolean Literal merepresentasikan nilai suatu tipe, dimana tipe itu sendiri menjelaskan bagaimana
Lebih terperinci