mi1274 alpro lanjut 5 - perulangan - 1

14
MI1264 ALGORITMA DAN PEMROGRAMAN LANJUT MODUL PRAKTIKUM Departemen Teknologi Informasi Telkom Applied Science School 2013 Hanya dipergunakan di lingkungan Telkom Applied Science School

Upload: defina-iskandar

Post on 20-Jun-2015

214 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Mi1274 alpro lanjut   5 - perulangan - 1

MI1264ALGORITMA DAN PEMROGRAMAN LANJUT

MODUL PRAKTIKUM

Departemen Teknologi InformasiTelkom Applied Science School

2013

Hanya dipergunakan di lingkungan Telkom Applied Science School

Page 2: Mi1274 alpro lanjut   5 - perulangan - 1

Daftar Penyusun

Departemen Teknologi InformasiTelkom Applied Science School2013

H a l i

Daftar Penyusun

1. Versi 1 : 2014 02 : Dahliar Ananda, M.T.

Page 3: Mi1274 alpro lanjut   5 - perulangan - 1

Daftar Isi

Departemen Teknologi InformasiTelkom Applied Science School2013

H a l ii

Daftar Pustaka1 Bab V – Perulangan While ..........................................................................................................................1

1.1 Identitas .............................................................................................................................................1

1.2 Pertanyaan Pendahuluan...................................................................................................................2

1.3 Praktik 1 – nilai ganjil dan genap .......................................................................................................3

1.3.1 Solusi Algoritma .............................................................................................................................3

1.3.2 Kode Program ................................................................................................................................3

1.3.3 Pengamatan ...................................................................................................................................4

1.4 Praktik 2 – Nilai Prima........................................................................................................................5

1.4.2 Pengamatan ...................................................................................................................................6

1.5 Praktik 3 – Nilai Mata Kuliah ..............................................................................................................7

1.5.1 Pengamatan ...................................................................................................................................8

1.6 Test akhir............................................................................................................................................9

1.7 Resume.............................................................................................................................................10

1.7.1 Tugas Pendahuluan......................................................................................................................10

1.7.2 Jurnal Pengamatan.......................................................................................................................10

1.7.3 Tugas Akhir...................................................................................................................................10

2 Daftar Pustaka ........................................................................................................................................... iii

Page 4: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 1

1 BAB V – PERULANGAN WHILE

1.1 IDENTITAS

KajianStruktur Kontrol II - Perulangan

Topik1. While

Referensi1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to Algorithms Third

Edition. Cambridge: The MIT Press.2. Sedgewick, R. (2002). Algorithm in Java: parts 1-4 Third Edition. Boston: Pearson Education, Inc.3. P. Deitel and H. Deitel, Java How To Program 9th Edition, Prentice Hall, 2011.4. Poo, Danny, Derek Kiong, and Swarnalatha Ashok. Object-Oriented Programming and Java, 2nd

Edition. Springer, 2010.5. Wu, C. Thomas. An Introduction to Object-Oriented Programming with Java. McGraw-Hill, 2009.

Kompetensi Utama1. Mahasiswa mampu menentukan kapan menggunakan perulangan2. Mahasiswa mampu membuat struktur perulangan while

Lama Kegiatan Kajian1. Pertemuan Terbimbing : 2 x 100 menit2. Kegiatan Mandiri : 1 x 120 menit

Parameter Penilaian1. Tugas Pendahuluan 20%2. Jurnal 50%3. Tugas Akhir 30%

Page 5: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 2

1.2 PERTANYAAN PENDAHULUAN

Pelajari materi berikut ini, sebelum pelaksanaan praktikum. Akan dilaksanakan test awal sebelum praktikumdimulai.

1. Perulangan dengan menggunakan While, Do-While dan For,2. Perbedaan penggunaan perulangan While, Do-While dan For,3. Struktur perulangan While, Do-While dan For,4. Pengaturan alur program dengan menggunakan BREAK,

Page 6: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 3

1.3 PRAKTIK 1 – NILAI GANJIL DAN GENAP

Pada praktik ini, dibangun sebuah aplikasi yang dapat

1. Menerima sebuah inputan nilai positif lebih dari NOL,2. Mencetak nilai genap antara nol hingga bilangan tersebut.

1.3.1 Solusi Algoritma1. Menerima inputan nilai,2. Pencetakan nilai genap dari 0 – inputan

a. Dilakukan proses perulangan dari nol hingga inputanb. Melakukan pengecekan terhadap nilai iterasi

i. Jika genap cetakii. Jika ganjil lanjut ke nilai iterasi selanjutnya

1.3.2 Kode Program

1.3.2.1 Menentukan variabel pendukungNo Nama Variabel Tipe Data Keterangan1 Batas Integer Menyimpan nilai inputan batas2 inp Scanner Digunakan sebagai penerima data inputan

1.3.2.2 Kode program kelas, inisialisasi variabel dan method main1. import java.util.Scanner;

2. class DeretBilangan{3. Scanner inp = new Scanner(System.in);4. int batas;

5. public static void main(String[] args){6. DeretBilangan db = new DeretBilangan ();7. db.runThis();8. }9. .10. .11. .12. }

1.3.2.3 Kode program input data dan pemanggilan method1. void runThis(){2. System.out.println("Deret nilai");3. System.out.print("Masukkan batas : ");4. batas = inp.nextInt();5. daftarGenap(batas);6. }

Page 7: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 4

1.3.2.4 Kode program perhitungan nilai genapPada perhitungan ini, akan dilakukan pencetakan nilai genap antara nol-inputan. Pada perulangan, terdapat 5buah komponen yang harus diperhatikan.

1. Inisialisasi. Pengecekan dimulai dari nol.int counter = 0;

2. Kondisi berhenti.a. Perulangan berjalan selama nilai counter <= batasb. Perulangan berhenti jika nilai counter > batas

3. Iterasi. Perubahan nilai counter dari nilai inisialiasi hingga mencapai kondisi berhenti.counter++;

4. Statements. Perintah yang akan diulang selama kondisi berhenti masih belum terpenuhicek nilai counter

jika counter modulus 2 = 0 cetak nilai counterjika counter modulus 2 != 0 lanjutkan perulangan

Dari penjelasan diatas, maka bentuk kode program adalah sebagai berikut

1. void daftarGenap(int batas){2. int counter=1;3. System.out.print("Daftar Nilai Genap : ");4. while (counter <= batas) {5. if ((counter % 2) == 0) {6. System.out.print(counter+" ");7. }8. counter++;9. }10. }

1.3.3 Pengamatan1. Gabungkan kode program diatas, sehingga dapat menjadi sebuah kode program yang lengkap.2. Pada method daftarGenap(), baris 8 terdapat statement counter++;

a. Apakah yang terjadi jika diubah menjadi counter--?b. Apakah yang dimaksud dengan kedua statement tersebut?c. Apakah padanan perintah tersebut?

3. Pada method daftarGenap(), baris 5 terdapat statement while (counter <= batas), Apakah yang terjadi, jikadiubah menjadi

a. while (counter < batas)b. while (counter > batas)

Page 8: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 5

1.4 PRAKTIK 2 – NILAI PRIMA

Pada contoh ini, akan digunakan sebagian kode program dari contoh sebelumnya. Hanya akan ditambahkansebuah method untuk melakukan pengecekan apakah nilai batas tersebut merupakan bilangan prima atau bukan.

1.4.1.1 Kode program pengecekan nilai primaPada method ini, akan dilakukan pengecekan apakah nilai batas tersebut adalah bilangan prima atau bukan.Sebuah nilai dianggap sebagai bilangan prima, jika dan hanya jika bilangan tersebut habis dibagi oleh 1 dan nilaiitu sendiri. Oleh karena itu, nilai tersebut akan dilakukan pembagian (modulus) dari 2-nilai tersebut.

a. Jika hanya terdapat 1 hasil yang menghasilkan nilai 0 bilangan primab. Jika terdapat lebih dari 1 hasil yang menghasilkan nilai 0 bukan bilangan prima

1. Perulangana. Inisialisasi. Pengecekan dimulai dari nol.

int counter = 2;int cekPrima = 0; // digunakan untuk menyimpan jumlah nilai batas yang habis dibagi counter

b. Kondisi berhenti.i. Perulangan berjalan selama nilai counter <= batas

ii. Perulangan berhenti jika nilai counter > batasc. Iterasi. Perubahan nilai counter dari nilai inisialiasi hingga mencapai kondisi berhenti.

counter++;d. Statements. Perintah yang akan diulang selama kondisi berhenti masih belum terpenuhi

cek (batas mod counter)jika = 0 cekPrima + 1jika != 0 lanjutkan perulangan

2. Pengecekan jumlah primaa. Jika cekPrima = 1 Cetak “[nilai batas] Bilangan prima”b. Jika cekPrima >1 Cetak “[nilai batas] Bukan bilangan prima”

Dari penjelasan diatas, maka bentuk kode program adalah sebagai berikut

1. boolean cekBilanganPrima(int batas){2. int counter=2;3. int cekPrima=0;4. while (counter <= batas) {5. if ((batas % counter) == 0) {6. cekPrima++;7. }8. counter++;9. }10. if (cekPrima > 1) {11. return false;12. }13. else {14. return true15. }16. }

Page 9: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 6

1.4.2 Pengamatan4. Lengkapi kode program pada contoh sebelumnya, dengan menambahkan kode program diatas. Lakukan

penambahan pada method runThis yang terdapat pada contoh pertama.5. Apa yang terjadi, jika pada baris 2 diubah menjadi int counter=0;

Page 10: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 7

1.5 PRAKTIK 3 – NILAI MATA KULIAH

Pada contoh ini, akan digunakan contoh pada modul sebelumnya, yaitu contoh kasus praktik Nilai Mata Kuliah.Akan dilakukan perubahan, dimana aplikasi akan berjalan terus menerus hingga pengguna memilih menu Keluar.

1. Pembuatan method menu2. Pembuatan method yang memiliki fungsionalitas spesifik sesuai dengan kebutuhan aplikasi.

a. Method daftarMenu.1. Void daftarMenu(){2. System.out.println("Aplikasi perhitungan nilai");3. System.out.println("Menu Utama");4. System.out.println("1. Hitung Nilai MK Teori");5. System.out.println("2. Hitung Nilai MK Teori & Praktikum");6. System.out.println("3. Keluar");7. System.out.print("Masukkan pilihan anda [1-3] : ");8. }

b. Method menu1. void EksekusiMenu(){2. int pilihan = 0;3. while (pilihan !=3){4. daftarMenu();5. pilihan = inp.nextInt();6. switch (pilihan){7. case 1 :8. MkTeori();9. break;10. case 2 :11. MkTeoriPraktikum();12. break;13. case 3 :14. System.out.println("Keluar dari aplikasi...");15. break;16. default :17. System.out.println("Pilihan tidak ada");18. }19. }20. }

Page 11: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 8

1.5.1 Pengamatan6. Gabungkan kode program diatas, sehingga dapat menjadi sebuah kode program yang lengkap. Jangan lupa

untuk melengkapinya dengan kode program yang telah dikerjakan pada minggu sebelumnya.

Page 12: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 9

1.6 TEST AKHIR

1. Buatlah sebuah aplikasi, yang dapat digunakan untuka. Menerima inputan bilangan bulat positif,b. Menentukan daftar bilangan prima yang terdapat antara 0 hingga inputan bilangan tersebut.

Contoha. Input : 10

Output : 2 3 5 7b. Input : 20

Output : 2 3 5 7 11 13 17 19c. Input : 60

Output : 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 57 59

2. Bukalah modul pada pertemuan 4 dan buatlah menu untuk kasus berikut inia. Ritel Makanan, dengan struktur menu adalah sebagai berikut.

i. Penambahan barangii. Penjualan (pengurangan) stock barang

iii. Pembelian (penambahan) stock barangiv. Tampilkan data barangv. Keluar

b. Perbankkani. Penambahan rekening baru

ii. Lihat saldoiii. Tambah saldoiv. Tarik saldov. Keluar

Bantuan :

1. [WAJIB] Gunakanlah switch untuk membuat menu.2. [WAJIB] Gunakanlah perulangan, sehingga aplikasi dapat berjalan terus menerus hingga user

memilih menu keluar

Page 13: Mi1274 alpro lanjut   5 - perulangan - 1

Perulangan - While

Program Studi Manajemen InformatikaTelkom Applied Science School2013

H a l 10

1.7 RESUME

1.7.1 Tugas Pendahuluan

1. Selesaikan soal yang terdapat pada bagian Tugas Pendahuluan dalam waktu maksimal 20 menit.2. Kumpulkan jawaban anda sesuai dengan instruksi dari asisten.

1.7.2 Jurnal Pengamatan

1. Jawablah pertanyaan-pertanyaan yang terdapat pada bagian pengamatan.2. Kumpulkan jawaban anda sesuai dengan instruksi dari asisten.

1.7.3 Tugas Akhir

1. Jawablah soal yang terdapat pada bagian Tugas Akhir2. Jawaban tugas akhir dikumpulkan maksimal 24 jam setelah praktikum berakhir.3. Kumpulkan jawaban anda sesuai dengan instruksi dari asisten.

Page 14: Mi1274 alpro lanjut   5 - perulangan - 1

Daftar Pustaka

Departemen Teknologi InformasiTelkom Applied Science School2013

H a l iii

2 DAFTAR PUSTAKA

[1] P. Deitel and H. Deitel, Java How To Program 9th Edition, Prentice Hall, 2011.

[2] E. Turban, D. Leidner, E. McLean and J. Wetherbe, Information Technology for Management,Wiley International, 2008.

[3] R. Sedgewick, Algorithm in Java: parts 1-4 Third Edition, Boston: Pearson Education, Inc, 2002.

[4] T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein, Introduction to Algorithms Third Edition,Cambridge: The MIT Press, 2009.

[5] D. Ananda, P. Mayadewi, A. Suryan, L. Rasiana and H. Kusmayadi, Algoritma dan Pemrograman,Bandung: Politeknik Telkom, 2009.

[6] M. Cantù, Essential Pascal 4th Edition, http://marcocantu.com, 2008.