Konsep rangkaian filter aktif berbasis operational amplifier
Mi1274 alpro lanjut 4 - percabangan case - praktikan
1. MI1264
ALGORITMA DAN PEMROGRAMAN LANJUT
MODUL PRAKTIKUM
Departemen Teknologi Informasi
Telkom Applied Science School
2013
Hanya dipergunakan di lingkungan Telkom Applied Science School
2. Daftar Penyusun
Departemen Teknologi Informasi
Telkom Applied Science School
2013
H a l i
Daftar Penyusun
1. Versi 1 : 2014 02 : Dahliar Ananda, M.T.
3. Daftar Isi
Departemen Teknologi Informasi
Telkom Applied Science School
2013
H a l ii
Daftar Pustaka
1 Bab I Method ..............................................................................................................................................1
1.1 Identitas .............................................................................................................................................1
1.2 Pertanyaan Pendahuluan...................................................................................................................2
1.3 Praktik 1 – Nilai Mata Kuliah..............................................................................................................3
1.3.1 Algoritma penyelesaian .................................................................................................................4
1.3.2 Langkah penyelesaian....................................................................................................................5
1.3.3 Pengamatan .................................................................................................................................10
1.4 Test akhir..........................................................................................................................................11
1.5 Resume.............................................................................................................................................12
1.5.1 Tugas Pendahuluan......................................................................................................................12
1.5.2 Jurnal Pengamatan.......................................................................................................................12
1.5.3 Tugas Akhir...................................................................................................................................12
2 Daftar Pustaka ...........................................................................................................................................iii
4. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 1
1 BAB I METHOD
1.1 IDENTITAS
Kajian
Struktur Kontrol I - Percabangan
Topik
1. Case
2. Percabangan Bersarang
Referensi
1. 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 Utama
1. Mahasiswa mampu menentukan kapan penggunaan IF
2. Mahasiswa mampu membuat struktur IF, IF-Else
3. Mahasiswa mampu membuat struktur percabangan IF Bersarang
Lama Kegiatan Kajian
1. Pertemuan Terbimbing : 2 x 100 menit
2. Kegiatan Mandiri : 1 x 120 menit
Parameter Penilaian
1. Tugas Pendahuluan 20%
2. Jurnal 50%
3. Tugas Akhir 30%
5. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 2
1.2 PERTANYAAN PENDAHULUAN
Pelajari materi berikut ini, sebelum pelaksanaan praktikum. Akan dilaksanakan test awal sebelum praktikum
dimulai.
1. Percabangan dengan menggunakan SWITCH
2. Pengaturan alur program dengan menggunakan BREAK,
3. Percabangan bersarang, konfigurasi IF dan SWITCH,
6. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 3
1.3 PRAKTIK 1 – NILAI MATA KULIAH
Buatlah sebuah aplikasi yang dapat digunakan untuk melakukan perhitungan nilai mata kuliah. Nilai didapatkan
dari komponen perhitungan berikut ini
1. Komponen Nilai
a. Mata Kuliah Teori
i. Bobot assessment 1 : 30%
ii. Bobot assessment 2 : 30%
iii. Bobot assessment 3 : 30%
iv. Bobot Tugas : 10%
b. Mata Kuliah Teori & Praktikum
i. Bobot assessment 1 : 15%
ii. Bobot assessment 2 : 15%
iii. Bobot assessment 3 : 10%
iv. Bobot Tugas : 20%
v. Bobot Praktikum : 40%
Nilai Praktikum ditentukan berdasarkan perhitungan bobot berikut ini
1. Bobot Nilai Mingguan : 80%
2. Bobot Tugas Akhir : 20%
2. Komponen Kehadiran.
a. Kehadiran lebih besar atau sama dengan 80, Indeks nilai dapat dikeluarkan sesuai aturan
Komponen Nilai
b. Kehadiran kurang dari 80, Indeks Akhir F
3. Tata cara penentuan Indeks nilai akhir
a. Indeks A, jika nilai lebih besar atau sama dengan 80
b. Indeks B, jika nilai lebih besar atau sama dengan 60 dan kurang dari 80
c. Indeks C, jika nilai lebih besar atau sama dengan 40 dan kurang dari 60
d. Indeks D, jika nilai lebih besar atau sama dengan 20 dan kurang dari 40
e. Indeks E, jika nilai kurang dari 20
7. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 4
1.3.1 Algoritma penyelesaian
Analisis fungsionalitas aplikasi
1. Membuat menu aplikasi bagi pengguna untuk memilih beberapa opsi berikut ini
a. Perhitungan nilai Mata Kuliah Teori
b. Perhitungan nilai Mata Kuliah Teori & Praktikum
2. Membuat proses perhitungan nilai akhir berdasarkan aturan yang telah ditentukan sebelumnya. Langkah-
langkahnya adalah sebagai berikut.
a. Pembuatan modul input komponen nilai & kehadiran,
b. Pembuatan modul perhitungan nilai akhir berdasarkan aturan penilaian,
c. Pembuatan modul penentuan indeks nilai akhir,
d. Pembuatan modul menampilkan data nilai lengkap.
Dari analisis diatas, maka akan disusun sebuah struktur program dengan menggunakan pemrograman modular
sebagai berikut.
1. Method main.
2. Method menu.
3. Method input nilai.
4. Method hitung hitung nilai akhir.
5. Method hitung Indeks akhir.
6. Method tampil data.
8. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 5
1.3.2 Langkah penyelesaian
1. Berdasarkan kebutuhan yang telah disebutkan pada bagian penjelasan diatas, maka dalam aplikasi ini
dibutuhkan beberapa variabel yang akan digunakan pada masing-masing fungsionalitas.
No Nama Variabel Tipe Data Keterangan
1 Nilai assessment 1 Integer Menyimpan nilai assessment 1
2 Nilai assessment 2 Integer Menyimpan nilai assessment 2
3 Nilai assessment 3 Integer Menyimpan nilai assessment 3
4 Nilai Tugas Integer Menyimpan nilai tugas
5 Nilai Praktikum Double Menyimpan nilai hasil perhitungan nilai praktikum
6 Nilai Mingguan Integer Menyimpan nilai mingguan praktikum
7 Nilai Tugas Akhir Integer Menyimpan nilai tugas akhir
8 Persentase kehadiran Integer Menyimpan jumlah persentase kehadiran
9 Nilai Akhir Double Menyimpan nilai akhir
10 Indeks Akhir Char Menyimpan indeks nilai akhir
11 Pilihan Char Digunakan untuk pilihan menu
12 inp Scanner Digunakan sebagai penerima data inputan
13 NIM String Menyimpan nim mahasiswa
2. Penyusunan kelas, variabel, data pembantu dan method main.
1. import java.util.Scanner;
2.
3. class NilaiMK{
4. private String nim;
5. private int kehadiran;
6. private double nilaiAkhir;
7. private char indexAkhir;
8. private int pilihan;
9. Scanner inp = new Scanner(System.in);
10.
11. public static void main(String[] xyz){
12. NilaiMK nmk = new NilaiMK();
13. nmk.menu();
14. }
9. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 6
3. Pembuatan method yang memiliki fungsionalitas spesifik sesuai dengan kebutuhan aplikasi.
a. Method menu.
1. void menu(){
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. pilihan = inp.nextInt();
9. switch (pilihan){
10. case 1 :
11. MkTeori();
12. break;
13. case 2 :
14. MkTeoriPraktikum();
15. break;
16. case 3 :
17. System.out.println("Keluar dari aplikasi...");
18. break;
19. }
20. }
b. Method untuk input data dan pemanggilan perhitungan nilai MK Teori
1. void MkTeori(){
2. int a1;
3. int a2;
4. int a3;
5. int tugas;
6. System.out.println("Perhitungan nilai Mata Kuliah Teori");
7. System.out.print("NIM : "); this.nim = inp.next();
8. System.out.print("Assessment 1 : "); a1 = inp.nextInt();
9. System.out.print("Assessment 2 : "); a2 = inp.nextInt();
10. System.out.print("Assessment 3 : "); a3 = inp.nextInt();
11. System.out.print("Tugas : "); tugas = inp.nextInt();
12. System.out.print("Kehadiran : "); kehadiran = inp.nextInt();
13.
14. nilaiAkhir = hitungNilaiAkhirTeori(a1, a2, a3, tugas);
15. indexAkhir = hitungIndexAkhir(nilaiAkhir, kehadiran);
16. viewMkTeori(a1,a2,a3,tugas);
17. }
10. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 7
c. Method hitung nilai MK Teori
1. double hitungNilaiAkhirTeori(int a1, int a2, int a3, int t){
2. double nilaiAkhir = (0.3*a1)+(0.3*a2)+(0.3*a3)+(0.1*t);
3. return nilaiAkhir;
4. }
d. Method view data nilai MK Teori
1. void viewMkTeori(int a1, int a2, int a3, int t){
2. System.out.println("Nilai MK Teori");
3. System.out.println("NIM : " + this.nim);
4. System.out.println("Assessment 1 : " + a1);
5. System.out.println("Assessment 2 : " + a2);
6. System.out.println("Assessment 3 : " + a3);
7. System.out.println("Tugas : " + t);
8. System.out.println("Jml Kehadiran : " + this.kehadiran + "%");
9. System.out.println("Nilai Akhir : " + this.nilaiAkhir);
10. System.out.println("Indeks Akhir : " + this.indexAkhir);
11. }
11. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 8
e. Method untuk input data dan pemanggilan perhitungan nilai MK Teori & Praktikum
1. void MkTeoriPraktikum(){
2. int a1;
3. int a2;
4. int a3;
5. int tugas;
6. double nilaiMingguan;
7. int nilaiTA;
8. double nilaiPraktikum;
9. System.out.println("Perhitungan nilai Mata Kuliah Teori&Praktikum");
10. System.out.print("NIM : "); this.nim = inp.next();
11. System.out.print("Assessment 1 : "); a1 = inp.nextInt();
12. System.out.print("Assessment 2 : "); a2 = inp.nextInt();
13. System.out.print("Assessment 3 : "); a3 = inp.nextInt();
14. System.out.print("Tugas : "); tugas = inp.nextInt();
15. System.out.print("Nilai Mingguan Praktikum : ");
16. nilaiMingguan = inp.nextInt();
17. System.out.print("Nilai Tugas Akhir Praktikum : ");
18. nilaiTA = inp.nextInt();
19. System.out.print("Kehadiran : "); kehadiran = inp.nextInt();
20.
21. nilaiPraktikum = hitungNilaiPraktikum(nilaiMingguan, nilaiTA);
22. nilaiAkhir = hitungNilaiAkhirTeoriPraktikum(a1, a2, a3, tugas,
nilaiPraktikum);
23. indexAkhir = hitungIndexAkhir(nilaiAkhir, kehadiran);
24. viewMkTeoriPraktikum(a1,a2,a3,tugas,nilaiPraktikum);
25. }
f. Method untuk menghitung nilai praktikum
1. double hitungNilaiPraktikum(double nm, int nta){
2. double nilaiPraktikum = (0.8*nm)+(0.2*nta);
3. return nilaiPraktikum;
4. }
g. Method untuk menghitung nilai akhir MK Teori & Praktikum
1. double hitungNilaiAkhirTeoriPraktikum(int a1, int a2, int a3, int t,
double np){
2. double nilaiAkhir = (0.15*a1)+(0.15*a2)+(0.1*a3)+(0.2*t)+(0.4*np);
3. return nilaiAkhir;
4. }
12. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 9
h. Method untuk menampilkan data lengkap MK Teori & Praktikum
1. void viewMkTeoriPraktikum(int a1, int a2, int a3, int t, double np){
2. System.out.println("Nilai MK Teori & Praktikum");
3. System.out.println("NIM : " + this.nim);
4. System.out.println("Assessment 1 : " + a1);
5. System.out.println("Assessment 2 : " + a2);
6. System.out.println("Assessment 3 : " + a3);
7. System.out.println("Tugas : " + t);
8. System.out.println("Nilai Praktikum : " + np);
9. System.out.println("Jumlah Kehadiran : " + this.kehadiran + "%");
10. System.out.println("Nilai Akhir : " + this.nilaiAkhir);
11. System.out.println("Indeks Akhir : " + this.indexAkhir);
12. }
i. Method untuk menghitung indeks akhir
1. char hitungIndexAkhir(double na, double h){
2. char indeks;
3. if ((na >= 80) && (h>=80))
4. indeks='A';
5. else if ((na >= 60) && (h>=80))
6. indeks='B';
7. else if ((na >= 40) && (h>=80))
8. indeks='C';
9. else if ((na >= 20) && (h>=80))
10. indeks='D';
11. else if ((na >= 0) && (h>=80))
12. indeks='E';
13. else
14. indeks='F';
15.
16. return indeks;
17. }
13. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 10
1.3.3 Pengamatan
1. Gabungkan kode program diatas, sehingga dapat menjadi sebuah kode program yang lengkap.
2. Perhatikan pada bagian method menu
a. Pilihan hanya ada pada saat user memasukkan nilai inputan dari 1-3 saja. Buatlah penanganan jika
user memasukkan nilai diluar 3 pilihan tersebut, dan tampilkan pesan “Inputan yang anda
masukkan tidak valid”
b. Apakah yang dimaksud dengan keyword break?
c. Apakah yang akan terjadi jika keyword break tersebut dihapus?
3. Pada kode program diatas, banyak terdapat digunakan keyword this. Jelaskan dengan apa yang dimaksud
dengan keyword tersebut.
4. Pada method
a. viewMkTeoriPraktikum(int a1, int a2, int a3, int t, double np)
b. viewMkTeori(int a1, int a2, int a3, int t)
tidak terdapat Informasi mengenai persyaratan jumlah kehadiran. Ddimana harusnya jika berdasarkan nilai
akhir harusnya mendapatkan nilai A/B/C/D/E. Namun ternyata mendapatkan nilai F. Buatlah sebuah
penanganan, sehingga akan ditampilkan sebuah pesan jika kehadiran kurang dari 80. Pesan yang akan
ditampilkan adalah
"Jumlah kehadiran kurang dari 80"
"Indeks Akhir F, dan anda tidak lulus"
"Salah satu syarat lulus, kehadiran>=80"
14. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 11
1.4 TEST AKHIR
Bukalah modul pada pertemuan 3 dan buatlah sebuah menu untuk materi
1. Ritel Makanan, dengan struktur menu adalah sebagai berikut.
i. Penambahan barang
ii. Penjualan (pengurangan) stock barang
iii. Pembelian (penambahan) stock barang
iv. Tampilkan data barang
2. Perbankkan
i. Penambahan rekening baru
ii. Lihat saldo
iii. Tambah saldo
iv. Tarik saldo
Bantuan :
1. [WAJIB] Gunakanlah switch untuk membuat menu.
2. [OPSIONAL] Gunakanlah perulangan, sehingga aplikasi dapat berjalan terus menerus hingga user
memilih menu keluar
15. Percabangan Case
Program Studi Manajemen Informatika
Telkom Applied Science School
2013
H a l 12
1.5 RESUME
1.5.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.5.2 Jurnal Pengamatan
1. Jawablah pertanyaan-pertanyaan yang terdapat pada bagian pengamatan.
2. Kumpulkan jawaban anda sesuai dengan instruksi dari asisten.
1.5.3 Tugas Akhir
1. Jawablah soal yang terdapat pada bagian Tugas Akhir
2. Jawaban tugas akhir dikumpulkan maksimal 72 jam setelah praktikum berakhir.
3. Kumpulkan jawaban anda sesuai dengan instruksi dari asisten.
16. Daftar Pustaka
Departemen Teknologi Informasi
Telkom Applied Science School
2013
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.