Modul Praktikum Java
Modul Praktikum Java
RAKTIKUM
Pemrograman Bero
erorientasi Objek
(Menggunakan Java
va With NetBeans)
DAFTA
TAR ISI
hal
Pendahuluan ......................................................
......................................................................... 1
i
Pendah
ahuluan
Tujuan :
1. Memberikan pengetahuan tentang struktur da
dasar program Java
2. Memberikan pengetahuan tentang proses men
engkompilasi program Java
3. Memberikan pengetahuan tentang penggunaa
ggunaan IDE Netbeans untuk membuat program
Java
1
Catatan : Agar program javac.exe dan java.exe eddapat dipanggil dari
semua direktori, maka program tersebut harus tersim
simpan dalam sistem
PATH. Caranya adalah dengan klik kanan pada My y Computer, pilih
properties. Kemudian pada tab Advanced, tekan an tombol Environment
Variables. Pada Panel System Variables, pilih Ke Key PATH dan tekan tombol
Edit. Pada Window Edit System Variables masuk ukkan PATH direktori program
tersebut berada. (mis : C:\Program Files\ Java\jdk1.
k1.6.0_03\bin)
2
BAB Program Output, Proses dan
an Input
1
Tujuan :
1. Mengenal statement output dengan print dan println
2. Mengenal penggunaan variabel
3. Mengenal proses pada program Java
4. Mengenal statement input
3
1.3 Program yang terdapat proses (perhitungan
ngan matematika)
Program berikut adalah program untuk menj
enjumlahkan 2 buah bilangan. Tulis dan
jalankan programnya. (Prak_103.java)
4
01 import java.util.Scanner;
02 public class Prak_105 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 int var_a, var_b;
06 System.out.print(“Masukkan nilai var var_a :”);
:”
07 var_a = masukan.nextInt();
08 System.out.print(“Masukkan nilai var var_b :”);
:”
09 var_b = masukan.nextInt();
10 System.out.println();
11 System.out.println(“Variabel yang terdapat da
dalam program :”);
12 System.out.println(“var_a = ” + var_a);
13 System.out.println(“var_b = ” + var_b);
14 }
15 }
01 import java.util.Scanner;
02 public class Prak_106 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 float celcius, reamur;
06 System.out.print(“Masukkan nilai suhu (celciu
lcius) : ”);
07 celcius = masukan.nextFloat();
08 reamur = 0.8f * celcius;
09 System.out.println();
10 System.out.print(“nilai suhu reamur dari input
put : ”);
11 System.out.println(reamur);
12 }
13 }
5
1.6 Soal Latihan
Soal 1.1 (Soal_101.java)
jari, yang kemudian dihitung dan ditampilkan
Buat program yang meminta inputan jari-ja
luas dan keliling lingkaran tersebut. (mis : iinput jari-jari = 5.5)
6
BAB Program dengan Kondisi
2
Tujuan :
1. Mengenal pernyataan if
2. Mengenal pernyataan if..else..
3. Mengenal pernyataan if..else.. bertingkat
4. Mengenal pernyataan switch..case
5. Mengenal penggunaan kondisi majemuk
01 import java.util.Scanner;
02 public class Prak_201 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 int nilai;
06 System.out.print(“Masukkan nilai akhir mata
ta kuliahnya
ku :”);
07 nilai = masukan.nextInt();
08 if (nilai < 55)
09 System.out.println(“Mahasiwa tersebut tidakk lulus”);
l
10 }
11 }
7
2.3 Program dengan pernyataan If..Else.. ber
bertingkat
Program di bawah adalah program untuk
uk m
mengkonversi nilai angka ke nilai huruf, yang
dilakukan dengan menggunakan pernyatan
an if..else.. bertingkat. Tulis dan jalankan
program tersebut (Prak_203.java).
01 import java.util.Scanner;
02 public class Prak_203 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.print(“Masukkan nilai mata kuliah
iahnya :”);
06 int nilai = masukan.nextInt();
07 if (nilai >= 80)
08 System.out.println(“Nilainya A”);
09 else if (nilai >= 70)
10 System.out.println(“Nilainya B”);
11 else if (nilai >= 55)
12 System.out.println(“Nilainya C”);
13 else if (nilai >= 40)
14 System.out.println(“Nilainya D”);
15 else
16 System.out.println(“Nilainya E”);
17 }
18 }
01 import java.util.Scanner;
02 public class Prak_204 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.print(“Masukkan angka 1 - 3 : ”);
06 int bil = masukan.nextInt();
07 switch (bil) {
08 case 1 : System.out.println(“Satu”);break;
09 case 2 : System.out.println(“Dua”);break;
10 case 3 : System.out.println(“Tiga”);}
11 }
12 }
8
Coba tambahkan pernyataan di bawah, yan
ang diletakkan setelah pernyataan case 3,
kemudian inputkan bilangan lebih besar da
dari 4. (Prak_205.java)
default : System.out.println(“Bila
ilangan di luar range”);
01 import java.util.Scanner;
02 public class Prak_206 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.print(“Masukkan nilai Matematikaika-nya :”);
06 int matematika = masukan.nextInt();
07 System.out.print(“Masukkan nilai Fisika-nya
ya :”);
:
08 int fisika = masukan.nextInt();
09 if ((matematika > 80) && (fisika > 70))
10 System.out.println(“Siswa tersebut DITERIMAMA”);
11 else
12 System.out.println(“Siswa tersebut TIDAK DIT
DITERIMA”);
13 }
14 }
9
Soal 2.2 (Soal_202.java)
Buat program untuk menentukan gaji seora
orang karyawan berdasarkan waktu/jam
kerjanya, dengan aturan bahwa batasan jam
am kerja normal adalah 50 sampai 60
jam/minggu dengan upah Rp.5000/jam. Jika lebih dari batas tersebut, maka kelebihan
perjamnya dibayar Rp 7500/jam. Tetapi jika jam kerjanya kurang dari 50 jam/minggu,
maka dikenakan potongan Rp.2500/jam nya
nya. (Input : jam kerja/minggu, dan output : total
gaji)
10
BAB Program dengan Perulangan
gan
3
Tujuan :
1. Mengenal pernyataan for
2. Mengenal pernyataan break
3. Mengenal variabel counter
4. Mengenal pernyataan while
5. Mengenal pernyataan do..while
01 import java.util.Scanner;
02 public class Prak_302 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.println(“Masukkan batas bilanganannya : “);
06 int batas = masukan.nextInt();
07 System.out.println(“Bilangan genap dari 2 sampai
sam bil tsb : “);
08 for(int i=2; i<=batas; i=i+2)
09 System.out.print(i + ““);
10 }
11 }
11
3.2 Program dengan pernyataan break
Pernyataan break adalah pernyataan untuk
uk menghentikan perulangan, sehingga akan
keluar dari perulangan tersebut walaupun
upun pr
proses perulangan belum berakhir. Berikut ini
adalah program untuk menentukan apakah
kah suatu bilangan itu termasuk bilangan prima
atau tidak. Tulis dan jalankan program dibawah
diba ini (Prak_303.java).
01 import java.util.Scanner;
02 public class Prak_303 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.println(“Masukkan sebuah bilang ngan : “);
06 int bil = masukan.nextInt();
07 boolean prima = true;
08 for(int i=2; i<bil; i++){
09 if ((bil % i)== 0) {
10 prima = false; break;}
11 }
12 if (prima)
13 System.out.print(bil + “ adalah bilangan PRIM
IMA”);
14 else
15 System.out.print(bil + “ adalah BUKAN bilang
ngan PRIMA”);
16 }
17 }
01 import java.util.Scanner;
02 public class Prak_304 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 System.out.println(“Masukkan batas bilanganannya : “);
06 int batas = masukan.nextInt();
07 int hasil = 0;
08 for(int i=1; i<=batas; i++)
09 hasil += i;
12
10 System.out.println(“Total jumlahnya adalah : “ + hasil);
11 }
01 import java.util.Scanner;
02 public class Prak_305 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 int n=0, total=0, bil=9;
06 while (bil!=0){
07 n++;
08 System.out.println(“Masukkan bilangan ke-“+ “+n+” : “);
09 bil = masukan.nextInt();
10 total += bil;
11 }
12 System.out.print(“Total jumlah “+(n-1)+” bilan
langan tsb : “);
13 System.out.println(total);
14 }
15 }
13
dihitung dari hutang/pinjaman yang tersisa.
isa. Tampilan daftar pembayaran mulai dari
pembayaran pertama sampai terakhir (lunas
unas).
14
BAB Program dengan menggunak
nakan modul (fungsi)
4
Tujuan :
1. Mengenal fungsi pada program Java
2. Mengenal fungsi yang mengembalikan suatu
tu nilai
3. Mengenal fungsi rekursif
01
import java.util.Scanner;
02
public class Prak_401 {
03
public static void main (String[] args) {
04
Scanner masukan = new Scanner(System.in .in);
05
int pilihan=9;
06
do {
07
System.out.println(“\nMENU\n“);
08
System.out.println(“1. Menghitung Luas Perse
rsegi Panjang”);
09
System.out.println(“2. Menghitung Luas Lingka
gkaran”);
10
System.out.println(“0. Keluar”);
11
System.out.print(“Masukkan Pilihan Anda : ”);
”)
12
pilihan = masukan.nextInt();
13
switch(pilihan){
14
case 1 : luasPersegiPanjang();break;
15
case 2 : luasLingkaran();break;
16
}
17
} while(pilihan != 0);
18
}
19
15
20
private static void luasPersegiPanjang(){
21
Scanner masukan = new Scanner(System.in .in);
22
float panjang, lebar, luas;
23
System.out.print(“Masukkan nilai panjang : ”); ”)
24
panjang = masukan.nextFloat();
25
System.out.print(“Masukkan nilai lebar : ”);
26
lebar = masukan.nextFloat();
27
luas = panjang * lebar;
28
System.out.println(“Luas Persegi Panjang : ” + luas);
29
}
30
private static void luasLingkaran(){
31
Scanner masukan = new Scanner(System.in .in);
32
float jari2, luas;
33
System.out.print(“Masukkan nilai jari-jari : ”);
34
jari2 = masukan.nextFloat();
35
luas = 3.14f * jari2 * jari2;
36
System.out.println(“Luas Lingkaran : ” + luas)
as);
37
}
38
}
39
01 import java.util.Scanner;
02 public class Prak_402 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 int bil1, bil2, bil3;
06 System.out.println(“Program Menjumlahkan n 2 bilangan“);
07 System.out.print(“Masukkan bilangan 1 : ”);
08 bil1 = masukan.nextInt();
09 System.out.print(“Masukkan bilangan 2 : ”);
10 bil2 = masukan.nextInt();
11 System.out.print(“Masukkan bilangan 3 : ”);
12 bil3 = masukan.nextInt();
16
13
System.out.println();
14
System.out.println(“Jumlah bil1 + bil2 : ”+(jum
umlah(bil1,bil2)));
15
System.out.println(“Jumlah bil2 + bil3 : ”+(jum
umlah(bil2,bil3)));
16
System.out.println(“Jumlah bil1 + bil3 : ”+(jum
umlah(bil1,bil3)));
17
}
18
private static int jumlah(int a, int b){
19
int hasil = a + b;
20
return hasil;
21
}
22
}
23
01
import java.util.Scanner;
02
public class Prak_404 {
03
public static void main (String[] args) {
04
Scanner masukan = new Scanner(System.in .in);
05
int bil, hasil;
06
System.out.print(“Masukkan suatu bilangan n : ”);
07
bil = masukan.nextInt();
08
hasil = faktorial(bil);
09
System.out.println(“Nilai faktorial ”+ bil +” ada
dalah “+ hasil);
10
}
11
private static int faktorial(int a){
12
if (a==1)
13
return 1;
14
Else
15
return (a * faktorial(a-1));
16
}
17
}
18
17
4.4 Soal latihan
Soal 4.1 (Soal_401.java)
Buat program yang memiliki suatu fungsi
gsi untuk
un menentukan apakah suatu bilangan itu
termasuk bilangan prima atau bukan. Kemud
mudian tampilkan bilangan prima dari 1 sampai
100.
18
BAB Program dengan Tipe Data
ata Array
A
5
Tujuan :
1. Mengenal tipe data Array
2. Mengenal array 2 dimensi
01 import java.util.Scanner;
02 public class Prak_501 {
03 public static void main (String[] args) {
04 Scanner masukan = new Scanner(System.in .in);
05 int jumbil, total=0;
06 float rata2;
07 System.out.print(“Berapa banyaknya bilanga gan ? ”);
08 jumbil = masukan.nextInt();
09 int data[] = new int[jumbil];
10 for(int i=0;i<jumbil;i++){
11 System.out.print(“Masukkan data ke-”+(i+1)+ )+” : “);
12 data[i] = masukan.nextInt();
13 total = total + data[i];
14 }
15 System.out.print(“Nilai rata-rata dari : ”);
16 for(int i=0;i<(jumbil-1);i++)
17 System.out.print(data[i] + “ + ”);
18 System.out.print(data[jumbil-1] + “ adalah ”);
19 rata2 = total/jumbil;
20 System.out.println(rata2);
21 }
22 }
19
5.2 Program dengan Array 2 dimensi
Program berikut adalah program untuk menj
enjumlahkan dua buah matriks. Untuk
membuat suatu matriks, maka digunakan array
ar 2 dimensi. Tulis dan jalankan program
berikut (Prak_502.java).
01 import java.util.Scanner;
02 public class Prak_502 {
03 public static void main (String[] args) {
04 int baris, kolom;
05 Scanner masukan = new Scanner(System.in .in);
06 System.out.println("Program Penjumlahan 2 buah b matriks");
07 System.out.print("Masukkan jumlah baris Ma atriks : ");
08 baris = masukan.nextInt();
09 System.out.print("Masukkan jumlah kolom Matriks
Ma : ");
10 kolom = masukan.nextInt();
11 System.out.println();
12 System.out.println("Masukkan data : ");
13 System.out.println("Matriks 1 : ");
14 int matriks1[][] = new int[baris][kolom];
15 for(int i=0;i<baris;i++){
16 for(int j=0;j<kolom;j++){
17 System.out.print("Bil baris ke-"+i+" kolom ke--"+j+" : ");
18 matriks1[i][j] = masukan.nextInt();
19 }
20 }
21 System.out.println();
22 System.out.println("Matriks 2 : ");
23 int matriks2[][] = new int[baris][kolom];
24 for(int i=0;i<baris;i++){
25 for(int j=0;j<kolom;j++){
26 System.out.print("Bil baris ke-"+i+" kolom ke--"+j+" : ");
27 matriks2[i][j] = masukan.nextInt();
28 }
29 }
30 System.out.println("Data sebelum dijumlahka kan : ");
31 System.out.println("Matriks 1 : ");
32 for(int i=0;i<baris;i++){
33 for(int j=0;j<kolom;j++)
34 System.out.print(matriks1[i][j] + "");
20
35 System.out.println();
36 }
37 System.out.println();
38 System.out.println("Matriks 2 : ");
39 for(int i=0;i<baris;i++){
40 for(int j=0;j<kolom;j++)
41 System.out.print(matriks2[i][j] + "");
42 System.out.println();
43 }
44 System.out.println();
45 int hasil[][] = new int[baris][kolom];
46 for(int i=0;i<baris;i++){
47 for(int j=0;j<kolom;j++)
48 hasil[i][j] = matriks1[i][j]+matriks2[i][j];
49 }
50 System.out.println("Hasil penjumlahan Matrikstriks tersebut : ");
51 for(int i=0;i<baris;i++){
52 for(int j=0;j<kolom;j++)
53 System.out.print(hasil[i][j] + "");
54 System.out.println();
55 }
56 System.out.println();
57 }
58 }
21
Dimana input data adalah memasukkan data
dat nilai (antara 0 sampai 100) ke dalam suatu
array. Menampilkan data adalah menampilkann ssemua isi array. Distribusi frekuensi adalah
mencari nilai frekuensi untuk masing-masing
g range
ra nilai (dengan interval 20) . Statistik
adalah mencari nilai mean, minimum dan maks
ksimum dari data.
22
BAB Program dengan Operasi File
Fi
6
Tujuan :
1. Mengenal operasi pembacaan file teks
2. Mengenal operasi penulisan file teks
01 import java.io.*;
02 public class Prak_601 {
03 public static void main (String[] args) throws
s Exception
E {
04 File file = new File(“Prak_601.java”);
05 if (!file.exists() || !file.canRead()){
06 System.out.println(“Can’t read “ + file);
07 return;
08 }
09 try {
10 int i=0;
11 BufferedReader fIn = new BufferedReader(ne (new FileReader(file));
12 String line;
13 while((line = fIn.readLine()) != null){
14 i++;
15 System.out.println(i+” : “+line);
16 }
17 }
18 catch (FileNotFoundException e){
19 System.out.println(“File tidak ditemukan”);
20 }
21 }
22 }
23
6.2 Program untuk menulis file teks
Program di bawah ini merupakan modifikas
kasi dari program di atas, yaitu dengan
membaca file dan kemudian menuliskannya
nnya ke file lain dngan menambahkan nomor
baris. Tulis dan jalankan program berikut
kut (P
(Prak_602.java).
import java.io.*;
public class Prak_602 {
public static void main (String[] args) throws
s Exception
E {
File fileIn = new File(“Prak_602.java”);
01
File fileOut = new File(“hasil.txt”);
02
if (!fileIn.exists() || !fileIn.canRead()){
03
System.out.println(“Can’t read “ + fileIn);
04
return;
05
}
06
try {
07
int i=0;
08
BufferedReader fIn=new BufferedReader(new ew FileReader(fileIn));
09
BufferedWriter fOut=new BufferedWriter(new ew FileWriter(fileOut));
10
String line;
11
while((line = fIn.readLine()) != null){
12
i++;
13
if (i<10) fOut.write(““);
14
else if (i<100) fOut.write(“ “);
15
fOut.write(i+” : “+line);
16
fOut.newLine();
17
}
18
fOut.close();
19
fIn.close()
20
}
21
catch (FileNotFoundException e){
22
System.out.println(“File tidak ditemukan”);
}
}
}
24
6.3 Soal latihan
Soal 6.1 (Soal_601.java)
Buat program untuk membaca file teks mhs
hs.txt yang memiliki isi sebagai berikut :
1234567890123456789023456789 ← tulisan ini tidak disimpan
01001 adi 45 65 89
01002 budi 80 45 70
01003 cahyo 60 80 30
01004 dedi 70 80 70
25
BAB Project Akhir
7
26