Senin, 28 Oktober 2013



PENYELESAIAN TUGAS
DASPRO MODUL 2



Disusun oleh :
Yoko Afuqu Suradinata
135623032

D3 manajemen informatika 2013
Universitas Negeri Surabaya


1. DASAR TEORI

a.       Netbeans
Net Beans adalah suatu tool untuk membuat program dengan menggunakanbahasa pemrograman Java berbasis grafis. Cara membuat program dengan merancangtampilan menggunakan komponent visual dan proses diletakan pada event driven. Netbeans menyediakan sekumpulan perangkat lunak modular yang disebut modul yangdipakai untuk membangun suatu aplikasi. Sebuah modul adalah merupakan arsip Java(Java Archive) yang memuat kelas-kelas Java yang berinteraksi dengan NetBeansOpenAPI . Kemudian rancangan tampilan yang dibuat menggunakan NetBens programnyasecara otomatis akan digenerate menjadi kode.

b. Eclipse

Eclipse adalah sebuah IDE untuk mengembangkan perangkat lunak dandapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari
Eclipse:

1)  Multi-platform: Target sistem operasi Eclipse adalah MicrosoftWindows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
2)  Multi-language: Eclipse dikembangkan dengan bahasa pemrogramanJava, akan tetapi Eclipse mendukung pengembangan aplikasi berbasisbahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP,dan lain sebagainya.
3)  Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipsepun bisa digunakan untuk aktivitas dalam siklus pengembanganperangkat lunak, seperti dokumentasi, test perangkat lunak,pengembangan web, dan lain sebagainya.Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakangratis dan open source, yang berarti setiap orang boleh melihat kodepemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yangmembuatnya populer adalah kemampuannya untuk dapat dikembangkanoleh pengguna dengan komponen yang dinamakan plug-in.

c. Penulisan Program di Java, Input, Output

                                Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada text editor. Contoh text editor yang dapat digunakan antara lain : notepad, vi, emacs dan lain sebagainya. Kode program yang dibuat kemudian tersimpan dalam sebuah berkas berekstensi .java. Setelah membuat dan menyimpan kode program, kompilasi file yang berisi kode program tersebut dengan menggunakan Java Compiler. Hasil dari kompilasi berupa berkas bytecode dengan ekstensi .class.Berkas yang mengandung bytecode tersebut kemudian akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan.



d.Operator: Assigment, Matematika, Perbandingan, Logika

1) Assignment
Adalah operator yang menggunakan tanda sama dengan (=) untuk mengisi sebuah nilai dalam suatu variabel.
2) Matematika
Adalah operator yang digunakan untuk melaksanakan operasi aritmatika. Beberapa operator aritmatika antara lain:
* : untuk perkalian
+ : untuk penjumlahan
- : untuk pengurangan
/ : untuk pembagian
% : untuk sisa pembagian (modulus)
3) Perbandingan
Adalah operator yang digunakan untuk membandingkan dua buah nilai atau operand. Operator perbandingan ini antara lain:
< : untuk kurang dari > : untuk lebih dari
<= : untuk kurang dari atau sama dengan
>= : untuk lebiih dari atau sama dengan
== : untuk sama dengan
!= : untuk tidak sama dengan
<> : untuk tidak sama dengan
4) Logika
Adalah operator yang digunakan untuk melakukan operasi logika yaituoperator yang menghasilkan nilai TRUE (benar) atau FALSE (salah). Bebarapa macam operator logika antara lain:
And        : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
Or           : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE
xo           : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE tetapi bukan                                                                                       kedua duanya bernilai TRUE
!              : menghasilkan nilai tidak TRUE
&&         : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
||           : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE

e. Tingkatan Operator

Java memiliki 44 operator, yang terbagi dalam 4 jenis dasar, yaitu operator aritmatik,
bitwise, relasi, dan logika.

f. Percabangan (if, if....else, if...elseif...., switch)
1) IF
IF sederhana merupakan kombinasi antara IF – THEN, hanya mengakomodasi alternative kondisi bernilai TRUE saja.
Syntax dari IF sederhana:
IF kondisi THEN statement_true;
IF kondisi THEN
BEGIN
Statement1_true;
Statement2_true;
END;

2) IF Else

Jika pada IF sederhana, kondisi salah tidak akan melaksanakan apapun maka pada IF dengan alternatif – yang merupakan kombinasi IF – THEN – ELSE – kondisi salah akan mempunyai statement yang dilaksanakan. Sebagai ilustrasi, perhatikan kembali Listing Program 3 – 1, ada kondisi yang merupakan kebalikan yaitu:
a bernilai TRUE dan not a bernilai FALSE
Pada saat dilaksanakan sebenarnya statement setelah IF not a THEN ..., tidak akan dilaksanakan, karena nilai a:=TRUE. Cobalah untuk mengganti
a:=FALSE, maka statement setelah IF a THEN … -lah yang tidak akan dilaksanakan. Sebenarnya kedua IF sederhana tersebut dapat diringkas dengan IF – THEN – ELSE yang syntaxnya:
IF kondisi THEN statement_true
ELSE statement_false;
IF kondisi THEN
BEGIN
END
ELSE
statement1_true;
Statement2_true;
BEGIN
Statement1_false;
Statement2_false;
END;

3) IF Else if
IF kompleks disebabkan adanya kondisi yang mempunyai lebih dari dua alternativejawaban. Syntaxnya adalah
IF kondisi1 THEN statement_kondisi1_true
ELSE IF kondisi2
THEN statement_kondisi1_false_kondisi2_true;
ELSE statement_ kondisi1_false_kondisi2_false;
IF kondisi1 THEN
BEGIN
statement1_kondisi1_true;
Statement2_kondisi1_true;
END
ELSE IF kondisi2 THEN
BEGIN
Statement1_kondisi1_false_kondisi2_true;
Statement2_kondisi1_false_kondisi2_true;
END
ELSE statement_kondisi1_false_kondisi2_false;

4) Switch

Dipakai pada saat kita ingin memberikan kondisi dengan beberapa syarat yang identik yang masing-masing mempunyai pernyataan yang berbeda-beda. Pada Java, nilai yang dilewatkan pada switch harus bertipe int, short, byte atau char. Sintaks dari switch adalah sebagai berikut:
switch (ekspresi) {
case nilai1: Pernyataan1;
break;
case nilai2: Pernyataan2;
break;
default: Pernyataan3;
}
Ketika ekspresi bernilai nilai1, maka alur program akan mengeksekusi
pernyataan1. Selanjutnya break menyebabkan alur program keluar dari daerah switch. Kalau ekspresi bernilai nilai2, maka alur program akan mengeksekusi Pernyataan2. Apabila ekspresi mempunya nilai yang tidak sama dengan nilai1 dan nilai2, maka alur program akan menuju ke bagian default dan kemudian mengeksekusi Pernyataan3.

II.SOAL PRAKTIKUM

1.  Tuliskan algoritma untuk mencari sisi miring dari suatu segitiga siku-siku jika diketahui diketahui panjang dua sisi yang membentuk sudut siku-siku.
Petunjuk: sisi miring segitiga siku-siku dapat dihitung dengan rumus pythagoras,

2.  Tuliskan algoritma untuk menampilkan banyaknya pecahan uang paling efisien dari
sejumlah uang yang di inputkan oleh pengguna. Pecahan uang yang digunakan: 100.000, 50.000, 20.000, 10.000, 5.000, 2.000, 1.000, 500, 200, dan 100.
      Contoh, untuk uang Rp 12.500, diperlukan 1 lembar 10.000, 1 lembar 2.000, dan 1 koin 500.
Input : jumlah uang
Output : banyaknya pecahan uang

3.  Buat algoritma untuk mengkonversi bilangan dalam format desimal menjadi biner.
      Input : bilangan desimal
      Output : bilangan biner
      Ilustrasi:

4.  Untuk menentukan bonus pegawai, berdasarkan ketentuan yang diberikan oleh bagian
personalia dan keuangan sebagai berikut : Pegawai perusahaan digolongkan menjadi
dua golongan, yaitu staf dan non staf. Staf akan mendapatkan bonus sebesar 1 juta  rupiah dengan syarat bahwa ia telah bekerja paling tidak 5 tahun dan umurnya sudah
mencapai 50 tahun; staf yang bekerja kurang dari 5 tahun dan berapapun umurnya, hanya mendapat bonus sebesar Rp. 500.000. Pegawai non staf yang telah bekerja lebih dari 5 tahun akan mendapat bonus sebesar Rp. 400.000 jika berumur lebih dari 50 tahun sedangkan pegawai non staf yang berumur kurang dari 50 tahun hanya mendapat bonus Rp. 250.000. Pegawai staf yang umurnya kurang dari 50 tahun akan mendapat bonus Rp. 300.000.
Buat algoritmanya?

5. Tarif pemasangan iklan baris di sebuah Surat Kabar ditentukan sebagai berikut :
- Hari : Minggu, Senin, Selasa, Rabu, Kamis dan Jumat, per baris Rp.
- Hari : Sabtu, per baris Rp. 40.000,-
Buatlah algoritma untuk menghitung total biaya iklan baris yang harus dibayar oleh
pengiklan.
Input : - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu)
Output : Total biaya iklan yang harus dibayar pengiklan
Tuliskan algoritma untuk kasus diatas dalam bentuk flowchart.

6. Info Harga Tiket Masuk bioskop Surabaya City adalah sebagai berikut :
- Senin – Kamis : Rp 15.000,-
- Jumat s/d Minggu : Rp 35.000,-
- Hari Libur : Rp 35.000,-
Input : - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu)
33.000,-
- Jumlah baris yang dipakai
- Libur atau Tidak Libur
- Jumlah tiket yang dibeli
Output : Total biaya tiket
Pertanyaan: Buat algoritma untuk menghitung total biaya tiket .

7. Di sebuah perbelanjaan di Surabaya diadakan Pekan Diskon, dimana perhitungan bonus dihitung bertingkat untuk total belanja senilai :
- Rp. 150.000,- diskonnya : 10%
- Rp. 275.000,- diskonnya : 15%
- Rp. 300.000,- diskonnya : 20%
- Rp. 400.000,- ke atas diskonnya : 25%

Diskon tidak dihitung sebagai akumulasi dari diskon nilai belanja dibawahnya.
Buatlah algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan total nilai belanja tertentu bila disertakan pula perhitungan diskonnya.
Input : Total nilai belanja.
Output : Nilai Diskon (dalam rupiah/bukan persen), Nilai yang harus dibayar



8. Berikut ini adalah ketentuan untuk menghitung nilai, dan konversi menjadi nilai huruf. Ketentuannya:
Nilai=((rata-rata tugas*30%)+(UTC*30%)+(UAC*40%))
Input = tugas1,tugas2,tugas3,UTC,UAC
Output = Nilai Akhir dan Nilai Huruf.
‘A’ jika nilai > 80 dan nilai <= 100
‘AB’ jika nilai > 70 dan nilai <= 80
‘B’ jika nilai > 65 dan nilai <= 70
‘BC’ jika nilai > 60 dan nilai <= 65
‘C’ jika nilai > 55 dan nilai <= 60
’D’ jika nilai > 40 dan nilai <= 55
’E’ jika nilai > 0 dan nilai <= 40

9. Berikut ini adalah tarif pemakaian Air PDAM Kota Surabaya
Jumlah Pemakaian (m3
Pemakaian I ( < 50 m3
Pemakaian II ( 51 – 150 ) Rp. 500,-
Pemakaian III ( 151 – 300 ) Rp. 1.000,-
Pemakaian I V( > 300 m3
Input : Jumlah Pemakaian
Output: Besar biaya yang harus dibayar
Jumlah Pemakaian = 500 m3
Pemakaian I ( s/d 50 m3
Pemakaian II ( 51 – 150 ) Rp. 500,- * 100 = Rp. 50.000,-
Pemakaian III ( 151 – 300 ) Rp. 1.000,- * 150 = Rp. 150.000,-
Pemakaian IV( > 300 m3
Biaya Total Rp. 510.000,-
Pertanyaan: Buat algoritma untuk kasus diatas.

10. Sebuah perusahaan kartu kredit memberikan cash back kepada nasabahnya berdasarkan jumlah nilai pemakaian kartu kredit selama sebulan.
Nilai pemakaian cash back
--------------------- ----------
s.d 1.000.000 5%
1.000.000 – 10.000.000 6%
10.000.000 – 25.000.000 7%
Diatas 25.000.000 8%
Ilustrasi: seorang nasabah yang total pemakaian selama sebulan 18.000.000, maka
cash backnya= 5%x1.000.000+6%x9.000.000+7%x8.000.000 = 160.000
Buat algoritma untuk menghitung cash back yang diterima nasabah berdasarkan nilai
pemakaian kartu kredit.
Jawab :



1. Algoritmanya :
a. Baca nilai sisi A
b. Baca nilai sisi B
c. Sisi C = Sqrt(A^2+B^2)
d. Tampilkan nilai sisi A, Sisi B, Sisi C.
Misalkan akan dilakukan pertukaran isi nilai A dan nilai B. Jika sebelum pertukaran
nilai A = 8 dan nilai B = 10, maka setelah pertukaran, nilai A = 10 dan nilai B = 8.
Penyelesaian permasalahan diatas adalah melakukan langkah sebagai berikut :
) Harga/m3
) Rp. 200,-
 ) Rp.1.500,-
) Rp. 200,- * 50 = Rp. 10.000,-
 ) Rp.1.500,- * 200 = Rp. 300.000,-
a. Isikan nilai A ke B (BA)
b. Isikan nilai B ke A (AB)
Langkah-langkah diatas tidak akan menghasilkan pertukaran yang benar, karena akan
dihasilkan nilai B = 8 dan nilai A = 8. Sehingga langkah-langkah diatas adalah salah,
dalam hal ini tidak menyelesaikan permasalahan.
Untuk mempertukarkan kedua nilai, diperlukan sebuah peubah pembantu sebagai
tempat penampungan sementara. Sehingga langkah-langkah pertukaran adalah sebagai
berikut :
a. Simpan nilai A di tempat penampungan C (CA)
b. Isikan nilai B ke nilai A (AB)
c. Isikan nilai C ke nilai B (BC)
2. Algoritmasoal nomor 2 :
a. Masukkan jumlah uang yang mau dihitung
b. Periksa jumlah uang yang dimasukkan.
c. Inisialisasi jumlah uang.
d. Lakukan perulangan dan pengkondisian sesuai dengan banyak pecahan yang ingin di
keluarkan.
e. Lalu output dapat dikeluarkan sesuai kebutuhan.
3. Algoritma soal nomor 3 :
a. Mulai
b. Baca desimal
c. Desimal=desimal div 2
d. Sisa= desimal mod 2
e. d= d*2
f. biner= biner + sisa * d sebelumnya
g. jika desimal 0 pergi ke 9
h. pergi ke 3
i. cetak biner
j.selesai
4. Algoritmasoal nomor 4 :
a. Input 4 data : nama, status kerja, masa kerja, usia.
b. Jika pilhan Status kerjanya Staff, masa kerja lebih dari 5 tahun dan umur diatas 50 tahun
maka mendapatkan bonus sebesar 1.000.000.
c. Selain umur kurang dari 50 tahun dan statusnya Staff maka mendapatkan bonus 300.000
d. Dan jika staf bekerja kurang dari 5 tahun dan berapapun umurnya mendapatkan bonus
500.000
e. Cek status non staff
f. Jika masa kerja lebih dari 5 tahun dan umur lebih dari 50 tahun maka mendapatkan
bonus sebesar 400.000
g. Selain non staf berumur kurang dari 50 tahun mendapatkan bonus 250.000

5. Algoritmansoal nomor 5 :
a. Masukkan Hari dan jumlah baris
b. Jika Hari minggu, senin, selasa,rabu,kamis, jumat
c. Maka total biayanya, jumlah baris dikalikan 33.000
d. Dan jika hari sabtu
e. Maka total biayanya, jumlah baris dikalikan 40.000
f. Output : Total biaya iklan

6. Algoritmasoal nomor 6 :
a. Masukkan data hari dan jumlah tiket.
b. Jika hari = Senin, Selasa, Rabu, Kamis.
c. Maka Total Biaya Tiket = jumlah tiket * 15000
d. Jika hari = Jumat, Sabtu, Minggu dan Libur.
e. Maka Total Biaya Tiket = jumlah tiket * 35000
f. Output Total biaya tiket.

7. Algoritmasoal nomor 7 :
a. Masukkan total belanja.
b. Periksa jumlah total belanja.
c. Jika total belanja :
1) Rp 150.000
 maka diskon 10%
2) Rp 275.000
 maka diskon 15%
3)Rp 300.000
 maka diskon 20%
4) Rp 400.000
 maka diskon 25%
d. Hitung nilai diskon = total belanja * diskon
e. Hitung nilai yang harus dibayar = nilai total belanja - nilai diskon.
f. Output: Nilai diskon dan nilai yg harus dibayar.

8. Algoritmasoal nomor 8 :
a. Masukkan 5 nilai (nilai tugas1,tugas2,tugas3,UTC,UAC)
b. Hitung nilai rata - rata tugas =
 nilai tugas1+tugas2+tugas3 / 3.
c. Lalu hitung semua nilai :
 Nilai=((rata-rata tugas*30%)+(UTC*30%)+(UAC*40%))
d. Seleksi nilai akhir.
e. Jika nilai akhir :
> 80 dan <=100
 maka nilai huruf = A
> 70 dan <=80
 maka nilai huruf = AB
> 65 dan <=70
 maka nilai huruf = B
> 60 dan <=65
 maka nilai huruf = BC
> 55 dan <=60
 maka nilai huruf = C
> 40 dan <=55
 maka nilai huruf = D
> 0 dan <=40
 maka nilai huruf = E
f. Output : hasil nilai akhir dan hasil seleksi nilai huruf

9. Algoritma soal nomor 9 :
a. Masukkan Jumlah Pemakaian Air.
b. Hitung jumlah nilai/pemakaian yang dimasukkan :
 1) Seleksi jika pemakaian <0, maka
 Biaya total = Jumlah * 0.
 2) Seleksi jika pemakaian <= 50, maka
Biaya total = Jumlah * 200
 3) Seleksi jika pemakaian <= 150, maka
Biaya total = ((50 * 200) + ((jumlah - 50) * 500))
 4) Seleksi jika pemakaian <= 300, maka
 Biaya Total = ((50 * 200) + (100 * 500) + ((jumlah - 150) * 1000)).
 5)Seleksi jika pemakaian > 300, maka
 Biaya Total = ((50 * 200) + (100 * 500) + (150 * 1000) + ((jumlah - 300) * 1500))
c. Output : Biaya Total

10. Algoritmasoal nomor 10 :
a. Ambil input user untuk memasukkan jumlah pemakaian Kartu Kredit
1) Masukkan ke variabel string pemakaian
2) Jika panjang inputan string pemakaian lebih dari 0, atau dengan kata lain
b. user telah menginputkan value,ubah input string pemakaian menjadi bilangan dengan
nama variabel
c. int jml_pemakaian,memberikan nilai default pada variabel pemakaian1 dengan,
d. pemakaian1= 1000.000.Jika nilai pada variabel jml_pemakaian <= 1.000.000
Memberikan nilai pada variabel pemakaian1 dengan,pemakaian1= e.
jml_pemakaian.Atau jika nilai pada variabel jml_pemakaian > 1.000.000, dan nilai
pada variabel jml_pemakaian <= 10.000.000
f. Memberikan nilai pada variabel pemakaian1 dengan,pemakaian1= 1.000.000
g. Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= jml_pemakaian –
1.000.000 atau jika nilai pada variabel jml_pemakaian > 10.000.000, dan nilaipada
variabel jml_pemakaian <= 25.000.000
h. Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= 10.000.000
i. Memberikan nilai pada variabel pemakaian3 dengan,pemakaian3= jml_pemakaian –
25.000.000.Atau jika nilai pada variabel jml_pemakaian > 25.000.000
j. Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= 10.000.000
k. Memberikan nilai pada variabel pemakaian3 dengan,pemakaian3= 25.000.000
l. Memberikan nilai pada variabel pemakaian4 dengan,pemakaian4= jml_pemakaian –
25.000.000
Memberikan nilai pada variabel cash_back_total m.
dengan,cash_back_total=(pemakaian1*5/100)+(pemakaian2*6/100)+(pemakaian3*7/
100)+(pemakaian4*8/10)
Cetak output dengan format, "Seorang nasabah yang total n.
selamasebulan "+jml_pemakaian+", maka total cash
backnya="+cash_back_total.Atau Jika panjang inputan tidak lebih dari 0, atau dengan
kata lain userbelum menginputkan value
o. Cetak output “Ada salah satu masukan yang kosong”
p. Stop proses
III. FLOWCHART
1. Flowchart untuk mencari sisi miring dari suatu segitiga siku-siku
2. Flowchart untuk menampilkan banyaknya pecahan uang paling efisien dari sejumlah
uang yang di inputkan oleh pengguna.
3. Flowchart untuk mengkonversi bilangan dalam format desimal menjadi biner.
4. Untuk menentukan bonus pegawai, berdasarkan ketentuan yang diberikan oleh bagian
personalia dan keuangan sebagai berikut : Pegawai perusahaan digolongkan menjadi
dua golongan, yaitu staf dan non staf. Staf akan mendapatkan bonus sebesar 1 juta
rupiah dengan syarat bahwa ia telah bekerja paling tidak 5 tahun dan umurnya sudah
mencapai 50 tahun; staf yang bekerja kurang dari 5 tahun dan berapapun umurnya,
hanya mendapat bonus sebesar Rp. 500.000. Pegawai non staf yang telah bekerja
lebih dari 5 tahun akan mendapat bonus sebesar Rp. 400.000 jika berumur lebih dari
50 tahun sedangkan pegawai non staf yang berumur kurang dari 50 tahun hanya
mendapat bonus Rp. 250.000. Pegawai staf yang umurnya kurang dari 50 tahun akan
mendapat bonus Rp. 300.000.
Flowchartnya Adalah?
5. Flowchart untuk menghitung total biaya iklan baris yang harus dibayar oleh
pengiklan.
6. Flowchart untuk menghitung total biaya tiket
7. Buatlah algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan
dengan total nilai belanja tertentu bila disertakan pula perhitungan diskonnya.
8. Flowchart untuk menghitung nilai, dan konversi menjadi nilai huruf
9. Flowchart untuk untuk soal nomor 9
10. Flowchart soal nomor 10

IV. SOURCE CODE & OUTPUT PROGRAM
1. Source Code dari soal nomor 1
package tgas2;
import java.util.*;
/**
 *
 * @author Jauhar
 */
public class num1 {
 public static void main(String[] args) {
 // TODO code application logic here
Scanner masuk = new Scanner(System.in);
 int sisi1,sisi2,c;
 System.out.println("Mengitung Panjang sisi miring Segitiga siku-
siku");
 System.out.print("Masukan Nilai Sisi 1 : ");
 sisi1 = masuk.nextInt();
 System.out.print("Masukan Nilai Sisi 2 : ");
 sisi2 = masuk.nextInt();
 c=((sisi1*sisi1)+(sisi2*sisi2));
 System.out.println("Panjang sisi miring segitiga siku-siku adalah
= "+(Math.sqrt(c)));
 }
}
Output :
2. Source Code Soal Nomor 2
package tgas2;
import java.util.*;
/**
 *
 * @author Jauhar
 */
public class num2 {
public static void main(String[] args) {
 // TODO code application logic here
 long bil1, uang;
 do
 {
 //inputan dari keyboard
 System.out.print("masukkan Jumlah uang = ");
 Scanner obj = new Scanner(System.in);
 uang = obj.nextLong();
 if (uang<100)
 {
System.out.println("Maaf, tidak ada nominal uang "+
 "sebesar "+uang+" rupiah");
continue;
}
else {
 if (uang >= 100000) {
 bil1 = uang / 100000;
System.out.println("Diperlukan " + bil1 +" lembar 100000");
}
uang = uang % 100000;
if ((uang >= 50000) && (uang <100000))
 {
 bil1 = uang / 50000;
 System.out.println("Diperlukan " + bil1 +" lembar 50000");
 }
 // antara 20000-50000
 System.out.println("Diperlukan " + bil1 +" lembar 50000");
 }
 uang = uang % 50000;
 if ((uang >= 20000) && (uang <50000))
 {
bil1 = uang / 20000;
System.out.println("Diperlukan " + bil1 +" lembar 20000");
 }
 uang = uang % 20000;
 if ((uang >= 10000) && (uang <20000))
 {
 bil1 = uang / 10000;
 System.out.println("Diperlukan " + bil1 +" lembar 10000");
 }
 // antara 5000-10000
 uang = uang % 10000;
 if ((uang >= 5000) && (uang <10000))
 {
 bil1 = uang / 5000;
 System.out.println("Diperlukan " + bil1 +" lembar 5000");
 }
 // antara 2000-5000
 uang = uang % 5000;
 if ((uang >= 2000) && (uang <5000))
 {
 bil1 = uang / 2000;
 System.out.println("Diperlukan " + bil1 +" lembar 2000");
 }
 if ((uang >= 1000) && (uang <2000))
 {
 bil1 = uang / 1000;
System.out.println("Diperlukan " + bil1 +" lembar 1000");
}
 uang = uang % 2000;
 if ((uang >= 1000) && (uang <2000))
 {
 bil1 = uang / 1000;
 System.out.println("Diperlukan " + bil1 +" lembar 1000");
 }
 uang = uang % 1000;
 if ((uang >= 500) && (uang <1000))
 {
bil1 = uang / 500;
 System.out.println("Diperlukan " + bil1 +" koin 500");
}
 uang = uang % 500;
 if ((uang >= 200) && (uang <500))
{
bil1 = uang / 200;
System.out.println ("Diperlukan " + bil1 +" koin 200");
}
uang = uang % 200;
 if ((uang >= 100) && (uang <200))
 {
bil1 = uang / 100;
System.out.println ("Diperlukan " + bil1 +" koin 200");
}
}
}
while(uang!=0);
}
}
Output Program :
package tgas2;
3. Source Code Soal Nomor 3
import java.util.*;
import java.io.*;
 /**
 *
 * @author Jauhar
public class num3 {
*/
public class num3 {
public static void main(String[] args) {
int angka;
Scanner obj = new Scanner(System.in);
System.out.print('\n'+"Masukkan Bil Desimal: ");
angka = obj.nextInt();
DesToBin(angka);
}
static void DesToBin(int bil){
int mod=0,sisa=0, i=0; boolean loop=true; int[] zz = new int[1000];
sisa=bil;
while (loop==true){ sisa = bil%2; bil= bil/2;
zz[i]=sisa; i++;
if((bil==0)||(bil==1)){ loop=false; zz[i]=bil; }
} //Cetak Bilangan Biner
System.out.print("konversinya ke bil.Biner adalah "); for (int a=i; a>=0;a--){
System.out.print(zz[a]);
} System.out.print('\n');
}
}
Output Program :
4. Source Code soal nomor 4
package tgas2;
import java.io.*;
/**
 *
 * @author jauhar
 */
public class num4 {
 public static void main(String[] args) {
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String kerja= "";
String usia= "";
String pegawai= "";
try{
System.out.print("Masukkan Lama Kerja : ");
kerja = dataIn.readLine();
System.out.print("Masukkan Usia : ");
usia = dataIn.readLine();
System.out.print("staff atau non staff : ");
pegawai = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
int massa = Integer.parseInt(kerja);
int umur = Integer.parseInt(usia);
if ("staff".equals(pegawai) && (massa>=5) && (umur>=50)){
 System.out.println("Bonus anda 1.000.000");
 }
 else if ("staff".equals(pegawai) && (massa<5)){
 System.out.println("Bonus anda 500.000");
 }
 else if ("staff".equals(pegawai) && (umur < 50)){
 System.out.println("Bonus anda 300.000");
 }
 else if ("non staff".equals(pegawai) && (massa>5) && (umur>50)){
 System.out.println("Bonus anda 400.000");
 }
 else if ("non staff".equals(pegawai) && (massa<5)){
 System.out.println("Bonus anda 250.000");
 }
 else if ("non staff".equals(pegawai) && (umur<50)){
 System.out.println("Bonus anda 250.000");
 }
 else {
else if ("staff".equals(pegawai) && (massa<5)){
 System.out.println("Bonus anda 500.000");
 }
 else if ("staff".equals(pegawai) && (umur < 50)){
 System.out.println("Bonus anda 300.000");
 }
 else if ("non staff".equals(pegawai) && (massa>5) && (umur>50)){
 System.out.println("Bonus anda 400.000");
 }
 else if ("non staff".equals(pegawai) && (massa<5)){
 System.out.println("Bonus anda 250.000");
 }
 else if ("non staff".equals(pegawai) && (umur<50)){
 System.out.println("Bonus anda 250.000");
 }
 else {
 System.out.println("Maaf, format status pegawai anda salah. Contoh
= staff / non staff");
 }
 }
}
Output Program :
5. Source Code soal nomor 5
package tgas2;
import java.io.*;
/**
 *
 * @author jauhar
 */
public class num5 {
public static void main(String[] args) {
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String hari= "";
String baris= "";
try{
System.out.print("Masukkan Hari : ");
hari = dataIn.readLine();
System.out.print("Masukkan jumlah baris : ");
baris = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
int total = Integer.parseInt(baris);
if("Minggu".equals(hari) || "Senin".equals(hari) || "Selasa".equals(hari)
|| "Rabu".equals(hari) || "Kamis".equals(hari) || "Jumat".equals(hari)){
System.out.println("Total Biaya = "+total * 33000);
}
else if("Sabtu".equals(hari)){
System.out.println("Total Biaya = "+total * 40000);
}
else {
System.out.println("Maaf, format hari anda salah. Awali huruf kapital. Contoh
= Senin ");
}
}
}
Output Program :
6. Source Code soal nomor 6
package tgas2;
import java.util.*;
/**
 *
 * @author jauhar
 */
public class num6 {
public static void main(String[] args) {
Scanner dino = new Scanner(System.in);
Scanner jumlah = new Scanner(System.in);
 Scanner libur = new Scanner(System.in);
int tiket,hari,lib,a,b,c;
 System.out.println("Harga tiket bioskop di Surabaya City");
System.out.println("- Senin – Kamis : Rp 15.000,-");
System.out.println("- Jumat s/d Minggu : Rp 35.000,-");
System.out.println("- Hari Libur : Rp 35.000,-");
System.out.println("\nINPUT");
System.out.println("1 = Senin | 2 = Selasa | 3 = Rabu");
System.out.println("4 = Kamis | 5 = Jumat | 6 = Sabtu | 7 = Minggu ");
System.out.println("8 = Hari Libur | 9 = Bukan Hari Libur");
System.out.print("\nMasukan Hari = ");
hari = dino.nextInt();
System.out.print("Jumlah Tiket = ");
tiket = jumlah.nextInt();
 System.out.print("Apakah hari libur = ");
 lib = libur.nextInt();
a = tiket * 15000;
b = tiket * 35000;
if (hari == 1 && lib != 8 || hari == 2 && lib != 8 || hari == 3 &&
lib != 8 || hari == 4 && lib != 8 )
{
System.out.println("Total yang harus dibayar adalah = "+a);
}
else if (hari == 1 && lib == 8 || hari == 2 && lib == 8 || hari == 3 &&
lib == 8 || hari == 4 && lib == 8){
System.out.println("Total yang harus dibayar adalah = "+b);
}
else if (hari == 5 || hari == 6 || hari == 7)
 {
 System.out.println("Total yang harus dibayar adalah = "+b);
 }
 }
}
Output Program
7. Sorce Code soal nomor 7
package tgas2;
import java.util.*;
/**
 *
 * @author jauhar
 */
public class NUM7 {
public static void main(String[] args) {Scanner belanja = new Scanner(System.in);
double total,diskon,bayar;
System.out.print("Total Belanja : ");
total = belanja.nextInt();
if(total<150000){
diskon= total * 0;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
else if(total<275000){
diskon= total * 0.1;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
else if(total<300000){
diskon= total * 0.15;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
else if(total<400000){
 diskon= total * 0.20;
 bayar=total-diskon;
 System.out.print("DisC = "+diskon);
 System.out.print("\nYang harus dibayar = "+bayar);
 diskon= total * 0.20;
 bayar=total-diskon;
 System.out.print("DisC = "+diskon);
 System.out.print("\nYang harus dibayar = "+bayar);
 }
 else {
 diskon= total * 0.25;
 bayar=total-diskon;
 System.out.print("DisC = "+diskon);
 System.out.print("\nYang harus dibayar = "+bayar);
 }
 }
}
Output Program
8. Source Code soal nomor 8
package tgas2;
import java.util.*;
/**
 *
 * @author jauhar
 */
public class NUM8 {
 public static void main(String[] args) {
 Scanner tugas1 = new Scanner(System.in);
 Scanner tugas2 = new Scanner(System.in);
 Scanner tugas3 = new Scanner(System.in);
 Scanner yutc = new Scanner(System.in);
 Scanner yuac = new Scanner(System.in);
int tgs1,tgs2,tgs3,utc,uac,rata;
double nilai;
System.out.print("\nMasukkan Nilai Tugas 1 = ");
tgs1 = tugas1.nextInt();
System.out.print("Masukkan Nilai Tugas 2 = ");
tgs2 = tugas2.nextInt();
System.out.print("Masukkan Nilai Tugas 3 = ");
tgs3 = tugas3.nextInt();
System.out.print("Masukkan Nilai UTC = ");
utc = yutc.nextInt();
System.out.print("Masukkan Nilai UAC = ");
uac = yuac.nextInt();
rata = (tgs1+tgs2+tgs3)/3;
 nilai=((rata*0.3)+(utc*0.3)+(uac*0.4));
if (nilai > 80 && nilai <=100){
System.out.println("Nilai anda adalah A");
 }
else if (nilai > 70 && nilai <=80){
System.out.println("Nilai anda adalah AB");
 }
 else if (nilai > 65 && nilai <=70){
 System.out.println("Nilai anda adalah B");
 }
 else if (nilai > 60 && nilai <=65){
 System.out.println("Nilai anda adalah BC");
 }
 else if (nilai > 55 && nilai <=60){
 System.out.println("Nilai anda adalah C");
 }
 else if (nilai > 60 && nilai <=65){
 System.out.println("Nilai anda adalah BC");
 }
 else if (nilai > 55 && nilai <=60){
 System.out.println("Nilai anda adalah C");
 }
 else if (nilai > 40 && nilai <=50){
 System.out.println("Nilai anda adalah D");
 }
 else if (nilai > 0 && nilai <=40){
 System.out.println("Nilai anda adalah E");
 }
 }
}
Output Program
9. Source Code soal nomor 9
package tgas2;
import java.util.*;
/**
 *
 * @author jauhar
 */
public class NUM9 {
 public static void main(String[] args) {
 Scanner pemakaian = new Scanner(System.in);
double air;
 System.out.print("Jumlah Pemakaian : ");
 air = pemakaian.nextInt();
 if (air < 0){
 System.out.print("Biaya total : "+air*0);
 }
 else if (air <= 50){
System.out.print("Biaya total : "+air*200);
 }
else if (air <= 150){
System.out.print("Biaya total : "+((50*200)+((air-50)*500)));
 }
 else if (air <= 300){
System.out.print("Biaya total : "+((50*200)+(100*500)+((air-150)*1000)));
}
 else {
System.out.print("Biaya total : "+((50*200)+(100*500)+(150 * 1000)+((air-300)
*1500)));
 }
}
}
Output Program
10. Source Code soal nomor 10
package tgas2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
/**
 *
 * @author jauhar
 */
public class NUM10 {
 public static void main(String[] args) {
 // TODO code application logic here
 String str_pemakaian ="";
 //int pemakaian = Integer.parseInt(str_pemakaian);
 int pemakaian1=0;
 int pemakaian2=0;
 int pemakaian3=0;
 int pemakaian4=0;
 int cash_back_total=0;
BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in)
);
System.out.print("Masukkan jumlah pemakaian Kartu
Kredit : "+str_pemakaian+"");
try{
str_pemakaian = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
if(str_pemakaian.length()>0){
int jml_pemakaian = Integer.parseInt(str_pemakaian);
pemakaian1=1000000;
if(jml_pemakaian<=1000000){
pemakaian1=jml_pemakaian;
 }
 else if(jml_pemakaian>1000000 && jml_pemakaian<=10000000){
 pemakaian1=1000000;
 pemakaian2=jml_pemakaian-1000000;
 }
 else if(jml_pemakaian>10000000 && jml_pemakaian<=25000000){
 pemakaian2=10000000;
 }
 else if(jml_pemakaian>1000000 && jml_pemakaian<=10000000){
 pemakaian1=1000000;
 pemakaian2=jml_pemakaian-1000000;
 }
else if(jml_pemakaian>10000000 && jml_pemakaian<=25000000){
pemakaian2=10000000;
pemakaian3=jml_pemakaian-25000000;
}
else if(jml_pemakaian>25000000){
pemakaian2=10000000;
pemakaian3=25000000;
pemakaian4=jml_pemakaian-25000000;
}
cash_back_total = (pemakaian1*5/100)+(pemakaian2*6/100)+(pemakaian3*7/
100)+(pemakaian4*8/100);DecimalFormat df = (DecimalFormat)
 DecimalFormat.getCurrencyInstance();
DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setCurrencySymbol("");
dfs.setMonetaryDecimalSeparator(',');
dfs.setGroupingSeparator('.');
df.setDecimalFormatSymbols(dfs);
String jumlah_pemakaian = "Rp. " + df.format(jml_pemakaian);
String hsl_biaya_total = "Rp. " + df.format(cash_back_total);
System.out.println("Seorang nasabah yang total selama
sebulan "+jumlah_pemakaian+", maka total cash backnya= "+hsl_biaya_total);
}
else{
System.out.println("\nAda salah satu masukan yang kosong!");
return;
}
}
}
Output Program
DAFTAR PUSTAKA
http://content30.wuala.com/rawcontent/BAB%2520II.pdf
http://ns.akakom.ac.id/~badi/kuliah_pemrograman_desktop/
BAB%20I%20Pengenalan%20Java%20NetBean.pdf
http://julio.staff.ipb.ac.id/files/2011/12/JENI-Intro1-Bab02-Pengenalan-Bahasa-JAVA.pdf
http://elearning.amikom.ac.id/index.php/download/materi/555146-ST084-8/2011/04/
http://elearning.unej.ac.id/courses/CSI1104/document/praktikum/
Praktikum_struktur_kontrol.pdf?cidReq=CSI1104
http://pasca.uns.ac.id/~saptono/komprog/3%20Percabangan.pdf
http://blog.binadarma.ac.id/fatoni/wp-content/uploads/2011/10/bab1.doc