Anda di halaman 1dari 48

LAPORAN JENI

Disusun Oleh :
Nama : Dinda Mutiara Sukmaningrum
NIM : 4.33.22.1.07
Kelas : TI-1B
Mata Kuliah : Pemrograman Berorientasi Objek

Program Studi Teknologi Rekayasa Komputer


Jurusan Teknik Elektro

POLITEKNIK NEGERI SEMARANG


2023
LATIHAN JENI BAB 1
Menyusun Algoritma

Dari permasalahan–permasalahan di bawah ini, susunlah sebuah algoritma untuk


menyelesaikannya. Anda dapat menyusunnya dengan menggunakan pseudocode ataupun
flowchart.

1. Memasak Roti
Pseudocode :
Siapkan roti yang ada didapur, siapkan wajan, nyalakan api, taruh roti kedalam wajan tunggu
beberapa saat hingga kecoklatan, jika dirasa sudah matang angkat roti dari wajan.
2. Menggunakan Komputer di Laboratorium
Tekan tombol power pada computer, nyalkan monitor, tunggu hingga loading screen sampai
gambar windows
3. Menghitung rata–rata dari 3 buah bilangan
Siapkan 3 bilangan, jumlahkan ketiganya, lalu bagi 3

Konversi Sistem Bilangan

Konversikan bilangan – bilangan berikut ini :

1.198010 ke sistem bilangan Biner, Heksadesimal dan Oktal


Konversi bilangan2 berikut

Biner : 1980 /2 = 0
990 /2 = 0
495 /2 = 1
247 /2 = 1
123 /2 = 1
61 /2 = 1
30 /2 = 0
15 /2 = 1
7 /2 = 1
3 /2 = 1
1 /2 = 1

Biner : 111101111002
Heksadesimal : 0111 =7
1011 = B
1100 = C = 7 B C
Oktal : 011 = 3
110 = 6
111 = 7
100 = 4 3G674
2. 10010011012 ke sistem bilangan Desimal, Heksadesimal dan Oktal

Heksadesimal : 1001001101 = 0010 = 2 0100 = 4 1101 = D = 2 4 D


Oktal : 001 = 1 001 = 1 001 = 1 101 = 5 = 1115
Desimal : 1 + 4 + 8 + 64 +512 = 589

3. 768 ke sistem bilangan Biner, Heksadesimal dan Desimal


768 ke bilangan biner, heksadesimal, dan decimal

Oktal : 111 = 7 110 = 6 = 768


Biner : 111110
Heksadesimal : 0011 = 3 1110 = E = 3 E
Desimal : 2+8+16+4+32 = 62

4. 43F16 ke sistem bilangan Biner, Desimal dan Oktal


Biner : 0100 = 4 0011 = 3 1111 = F =3 4 F
= 010000111111
Oktal : 010 = 2 000 = 0 111 = 7 111 = 7 =2077
Desimal : 1+2+4+16+8+32+1024 = 108
LATIHAN JENI BAB 3

Mengenali Lingkup Pemrograman Anda

Hello World!

Menggunakan NetBeans, membuat class dengan nama : [NamaAnda]. Hasil dari program yang
harus tampil di layar :

Welcome to Java Programming [NamaAnda]!!!

Kode program :

package com.tutorial;

public class hello{

public static void main(String[] args){


String name = "Dinda Mutiara SUkmaningrum";
System.out.println("Welcome to Java Programming : " + name);
}

Hasil Program :

The Tree

Menggunakan NetBeans, membuat class dengan nama : TheTree. Hasil dari program yang harus
tampil dilayar :

I think that I shall never see, a poem as lovely as


a tree.
A tree whose hungry mouth is pressed Against the Earth’s
sweet flowingbreast.
Kode program :
package com.tutorial;

Hasil program
public class: TheTree
{
public static void main(String[] args) {
System.out.println("I Think that I shall never see");
System.out.println("a poem as lovely as a tree");
System.out.println("A tree whose hungry mouth is pressed");
System.out.println("Againts the Erath's sweet flowing breast");

}
Output :
LATIHAN JENI BAB 4

Dasar-Dasar Pemrograman

Mendeklarasikan dan mencetak variabel


Diberikan tabel dibawah ini, deklarasikan variabel yang terdapat didalamnya dengan tipe data yang
sesuai dan berikan nilai inisialisasi. Tampilkan hasil outputnya yaitu nama variabel dan nilainya.

Nama Variabel Tipe Data Nilai Awal


number integer 10
letter character a
result boolean true
str String hello

Berikut ini merupakan tampilan yang diharapkan sebagai hasil eksekusi program,

Number = 10
letter = a result
= true str =
hello
Kode program :
int number = 10;
char letter = 'a';
boolean result = true;
String str = "Hello";

System.out.println("Number : " + number);


System.out.println("Letter : " + letter);
System.out.println("result : " + result);
System.out.println("str : " + str);

Hasil program :

Mendapatkan nilai rata-rata dari tiga angka


Buatlah program yang menghasilkan output nilai rata-rata dari tiga angka. Nilai dari masing-
masing tiga angka tersebut adalah 10, 20 dan 45. Tampilan Output yang diharapkan adalah,

number 1 = 10
number 2 = 20
number 3 = 45
Rata-rata = 25

Kode proram :

int number_1 = 10;


int number_2 = 42;
int number_3 = 32;

int rata_rata = (number_1 + number_2 + number_3) /3;

System.out.println("Nomer 1 : " + number_1);


System.out.println("Nomer 1 : " + number_2);
System.out.println("Nomer 1 : " + number_3);
System.out.println("Rata - rata : " + rata_rata);

Hasil program :

Menampilkan nilai terbesar


Diberikan tiga angka, tuliskan program yang menghasilkan output angka dengan nilai terbesar
diantara tiga angka tersebut. Gunakan operator kondisi ?: yang telah kita pelajari sebelumnya
(PETUNJUK: Anda akan perlu menggunakan dua set operator ?: untuk memecahkan
permasalahan ini). Sebagai contoh, diberikan angka 10, 23 dan 5, Program Anda akan
menghasilkan output,

number 1 = 10
number 2 = 23
number 3 = 5
Nilai tertingginya adalah angka = 23
Kode program :
int a = 10;
int b = 24;
int c = 42;

int x = (a > b) ? (a > c ? a : b) : (b > c ? b : c);

System.out.println("Nilai terbesar : " + x);

Hasil program :
Operator precedence

Diberikan pernyataan berikut ini, tulis kembali soal tersebut dengan menambahkan tanda
kurung pada urutan sesuai dengan bagaimana pernyataan tersebut akan dievaluasi.

1. a / b ^ c ^ d – e + f – g * h + i

Jawab :
((a / ((b ^ c) ^ d)) - e + f) - (g * h) + i

2. 3 * 10 *2 / 15 – 2 + 4 ^ 2 ^ 2
Jawab :
(((3 * 10 * 2) / 15) - 2) + (4 ^ (2 ^ 2))

3. r ^ s * t / u – v + w ^ x – y++
Jawab :
(((r ^ s) * t) / u) - v + (w ^ x) - y++

9
LATIHAN JENI BAB 5

Mendapatkan Input dari Keyboard

Kata Terakhir (versi BufferedReader)


Menggunakan BufferedReader, tanyakan tiga kata dari user dan tampilkan output dari input
user tersebut ke layar. Contoh,
Enter word1:Goodbye Enter
word2:and Enter
word3:Hello

Goodbye and Hello

Kode program :

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {


public static void main(String[] args) {

BufferedReader datain = new BufferedReader(new InputStreamReader(System.in));

String name1 = "";


String name2= "";
String name3= "";

System.out.println("Masukan word 1 : ");

try{
name1 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}

System.out.println("Masukan word 2 : ");

try{
name2 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}

System.out.println("Masukan word 3 : ");

try{
10
name3 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}

System.out.println(name1+ " " +name2+ " " + name3);

Hasil program :

Kata Terakhir (versi JOptionPane)


Menggunakan JOptionPane, tanyakan tiga kata dari user dan tampilkan output dari input user
tersebut ke layar. Contoh

Gambar 1: Input Pertama

Gambar 2: Input Kedua

11
Gambar 3: Menampilkan Pesan
Kode program :
package com.tutorial;

import javax.swing.JOptionPane;

public class Main {


public static void main(String[] args) {
String word1 = "";
word1 = JOptionPane.showInputDialog("masukan kata ke - 1");

String word2 = "";


word2 = JOptionPane.showInputDialog("masukan kata ke - 2");

String msg = word1+" and " + word2;


JOptionPane.showMessageDialog(null, msg);
}
}

Hasil program :

12
13
LATIHAN JENI BAB 6
Nilai
Ambil tiga nilai ujian dari user dan hitung nilai rata-rata dari nilai tersebut. Berikan
output rata-rata dari tiga ujian. Berikan juga smiley face pada output jika nilai rata-rata lebih
besar atau sama dengan 60, selain itu beri output :-(.
1. Gunakan BufferedReader untuk mendapat input dari user, dan System.out untuk output
hasilnya.
Kode program :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {


public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

try {
System.out.println("Masukkan nilai ujian ke-1: ");
int nilai1 = Integer.parseInt(reader.readLine());

System.out.println("Masukkan nilai ujian ke-2: ");


int nilai2 = Integer.parseInt(reader.readLine());

System.out.println("Masukkan nilai ujian ke-3: ");


int nilai3 = Integer.parseInt(reader.readLine());

int rataRata = (nilai1 + nilai2 + nilai3) / 3;

System.out.println("Nilai rata-rata: " + rataRata);

if (rataRata >= 60) {


System.out.println(":-)"); // Smiley face
} else {
System.out.println(":-("); // Sad face
}
} catch (IOException e) {
e.printStackTrace();
} catch (NumberFormatException e) {
System.out.println("Input tidak valid. Harap masukkan angka.");
}
}
}

Hasil Smiley Face :

14
Hasil ☹ :

2. Gunakan JOptionPane untuk mendapat input dari user dan output hasilnya.
Kode program :
import javax.swing.JOptionPane;

public class Main {


public static void main(String[] args) {
try {
String input1 = JOptionPane.showInputDialog("Masukkan nilai ujian ke-1:
");
int nilai1 = Integer.parseInt(input1);

String input2 = JOptionPane.showInputDialog("Masukkan nilai ujian ke-2:


");
int nilai2 = Integer.parseInt(input2);

String input3 = JOptionPane.showInputDialog("Masukkan nilai ujian ke-3:


");
int nilai3 = Integer.parseInt(input3);

int rataRata = (nilai1 + nilai2 + nilai3) / 3;

JOptionPane.showMessageDialog(null, "Nilai rata-rata: " + rataRata);

if (rataRata >= 60) {


JOptionPane.showMessageDialog(null, ":-)"); // Smiley face
} else {
JOptionPane.showMessageDialog(null, ":-("); // Sad face
}
} catch (NumberFormatException e) {

15
JOptionPane.showMessageDialog(null, "Input tidak valid. Harap masukkan
angka.");
}
}
}

Hasil 😊 :

Hasil Sad face :

Membaca Bilangan
Ambil sebuah angka sebagai input dari user, dan outputnya berupa kata yang sesuai dengan
angka. Angka yang dimasukkan antara 1-10. Jika user memasukkan nilai yang tidak sesuai
berikan output “Invalid number”.

16
1. Gunakan statement if-else untuk menyelesaikan
Kode program :
import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

System.out.println("Masukkan sebuah angka (1-10): ");


int angka = scanner.nextInt();

String kata;

if (angka == 1) {
kata = "Satu";
} else if (angka == 2) {
kata = "Dua";
} else if (angka == 3) {
kata = "Tiga";
} else if (angka == 4) {
kata = "Empat";
} else if (angka == 5) {
kata = "Lima";
} else if (angka == 6) {
kata = "Enam";
} else if (angka == 7) {
kata = "Tujuh";
} else if (angka == 8) {
kata = "Delapan";
} else if (angka == 9) {
kata = "Sembilan";
} else if (angka == 10) {
kata = "Sepuluh";
} else {
kata = "Invalid number";
}

System.out.println("Output: " + kata);


}
}

Hasil :

17
2. Gunakan statement switch untuk menyelesaikan

Kode program :
Scanner scanner = new Scanner(System.in);

System.out.println("Masukkan sebuah angka (1-10): ");


int angka = scanner.nextInt();

String kata;

switch (angka) {
case 1:
kata = "Satu";
break;
case 2:
kata = "Dua";
break;
case 3:
kata = "Tiga";
break;
case 4:
kata = "Empat";
break;
case 5:
kata = "Lima";
break;
case 6:
kata = "Enam";
break;
case 7:
kata = "Tujuh";
break;
case 8:
kata = "Delapan";
break;
case 9:
kata = "Sembilan";
break;
case 10:
kata = "Sepuluh";
break;
default:
kata = "Invalid number";
break;
}

System.out.println("Output: " + kata);


}

18
Hasil :

Cetak Seratus Kali


Buat sebuah program yang mencetak nama Anda selama seratus kali. Buat tiga versi
program ini menggunakan while loop, do while dan for-loop.

While loop :
public class Main {
public static void main(String[] args) {
int count = 0;
while (count < 100) {
System.out.println("Dinda Mutiara");
count++;
}
}
}

Do while :
public class Main {
public static void main(String[] args) {
int count = 0;

do{
System.out.println("Dinda");
count++;
}while(count == 100){
break;
}
}
}

Hasil :

19
For loop :
public class Main {
public static void main(String[] args) {
for (int count = 0; count < 100; count++) {
System.out.println("Dinda Mutiara");
}
}
}

Hasil :

Perpangkatan
Hitung pangkat sebuah nilai berdasarkan angka dan nilai pangkatnya. Buat tiga versi dari
program ini menggunakan while loop, do-while dan for-loop.
While loop :
public class Main {
public static void main(String[] args) {
int base = 2;
int exponent = 5;
int result = 1;
int i = 0;

while (i < exponent) {


result *= base;
i++;
}

System.out.println(base + " pangkat " + exponent + " = " + result);


}
}

20
Do while :
public class Main {
public static void main(String[] args) {
int base = 2;
int exponent = 5;
int result = 1;
int i = 0;

do {
result *= base;
i++;
} while (i < exponent);

System.out.println(base + " pangkat " + exponent + " = " + result);


}
}

For loop :
public class Main {
public static void main(String[] args) {
int base = 2;
int exponent = 5;
int result = 1;

for (int i = 0; i < exponent; i++) {


result *= base;
}

System.out.println(base + " pangkat " + exponent + " = " + result);


}
}

21
LATIHAN JENI BAB 7
Hari dalam seminggu
Buatlah sebuah String array yang akan menginisialisasi 7 hari dalam seminggu. Sebagai
contoh,

String days[] = {“Monday”, “Tuesday”….};

Gunakan while-loop, kemudian print semua nilai dari array (Gunakan juga untuk do- while
dan for-loop)Using a while-loop.
While loop :

public class Main {


public static void main(String[] args) {
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday",
"Saturday", "Sunday"};

int i = 0;
do {
System.out.println(days[i]);
i++;
} while (i < days.length);
}
}

Hasil :

Do while :
public class Main {
public static void main(String[] args) {
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday",
"Saturday", "Sunday"};

for (int i = 0; i < days.length; i++) {


System.out.println(days[i]);
}
}
}

22
Hasil :

For loop :
public class Main {
public static void main(String[] args) {
String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday",
"Saturday", "Sunday"};

int i = 0;
while (i < days.length) {
System.out.println(days[i]);
i++;
}
}
}

Hasil :

Nomor terbesar
Gunakanlah BufferedReader dan JoptionPane, tanyakan kepada user untuk 10 nomor.
Kemudian gunakan array untuk menyimpan 10 nomor tersebut. Tampilkan kepada user,input
terbesar yang telah diberikan user.
Kode program :

import java.io.BufferedReader;
23
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JOptionPane;

public class Main {


public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

int[] numbers = new int[10];


for (int i = 0; i < 10; i++) {
String input = JOptionPane.showInputDialog(null, "Masukkan nomor ke-" + (i
+ 1));
numbers[i] = Integer.parseInt(input);
}

int maxNumber = numbers[0];


for (int i = 1; i < 10; i++) {
if (numbers[i] > maxNumber) {
maxNumber = numbers[i];
}
}

JOptionPane.showMessageDialog(null, "Input terbesar yang Anda berikan adalah:


" + maxNumber);
}
}

Hasil program :

24
Buku Alamat
Berikut ini adalah array multidimensi yang menyatakan isi dari sebuah buku alamat:

String entry = {{"Florence", "735-1234", "Manila"},


{"Joyce", "983-3333", "Quezon City"},
{"Becca", "456-3322", "Manila"}};

Cetak buku alamat tersebut dalam format berikut ini:

Name : Florence
Tel. # : 735-1234
Address : Manila

Name : Joyce
Tel. # : 983-3333
Address : Quezon City

Name : Becca
Tel. # : 456-3322
Address : Manila

Kode program :
public class Main {
public static void main(String[] args) {
String[][] entries = {
{"Florence", "735-1234", "Manila"},
{"Joyce", "983-3333", "Quezon City"},
{"Becca", "456-3322", "Manila"}
};

for (int i = 0; i < entries.length; i++) {


System.out.println("Name : " + entries[i][0]);
System.out.println("Tel. # : " + entries[i][1]);
25
System.out.println("Address : " + entries[i][2]);
System.out.println();
}
}
}

Hasil program :

26
LATIHAN JENI BAB 8
Mencetak Argumen
Dapatkan input dari user dengan menggunakan argumen command line dan cetak semua
argumen ke layar. Sebagai contoh, jika user memasukkan

java Hello world that is all

program Anda haruslah mencetak

Hello
world
thatis
All
Kode program :
public class Main {
public static void main(String[] args) {
if (args.length > 0) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
} else {
System.out.println("Tidak ada argumen yang diberikan.");
}
}
}

Pertama buka terminal

Masukan kode java namaClass.java java hello world that is all

27
Operasi Aritmatik
Dapatkan dua buah bilangan yang diinputkan user dari command line dengan argumen
command line, kemudian cetak hasil penjumlahannya, hasil pengurangannya, hasil
perkalian, dan juga hasil pembagiannya.

java ArithmeticOperation 20 4

program anda akan mencetak

sum = 24
difference = 16
product = 80
public class ArithmeticOperation {
public static void main(String[] args) {
if (args.length != 2) {
System.out.println("Harap berikan dua bilangan sebagai argumen command
line.");
return;
}

int num1 = Integer.parseInt(args[0]);


int num2 = Integer.parseInt(args[1]);

int sum = num1 + num2;


int difference = num1 - num2;
int product = num1 * num2;
int quotient = num1 / num2;

System.out.println("sum = " + sum);


System.out.println("difference = " + difference);
System.out.println("product = " + product);
System.out.println("quotient = " + quotient);
}
}

quotient = 5
Hasil program :
Ketik “ java namaClass.java 20 4 “

28
LATIHAN JENI BAB 9
Latihan

Mendefinisikan Istilah

Dengan kata-kata Anda sendiri, definisikan istilah-istilah berikut ini :

1. Class
2. Object
3. Instantiate
4. Instance Variable
5. Instance Method
6. Class Variables atau static member variables
7. Constructor

1. Class: Class adalah sebuah blueprint atau cetak biru yang mendefinisikan atribut
(variabel) dan perilaku (metode) dari objek. Class berfungsi sebagai template atau
rancangan untuk menciptakan objek-objek yang memiliki karakteristik yang sama.

2. Object: Object adalah sebuah instansi konkret atau perwujudan nyata dari sebuah
class. Object memiliki atribut dan perilaku yang ditentukan oleh class yang
menjadi dasarnya. Object juga dapat disebut sebagai variabel yang memiliki tipe
data class.

3. Instantiate: Instantiate adalah proses menciptakan sebuah objek baru dari sebuah
class. Saat kita meng-instantiate sebuah class, kita menciptakan sebuah objek yang
berbeda dan memori yang terpisah untuk objek tersebut.

4. Instance Variable: Instance Variable adalah variabel yang dideklarasikan di dalam


sebuah class, dan setiap objek yang di-instantiate dari class tersebut akan memiliki
salinan individu dari variabel tersebut. Instance variable berisi data yang unik
untuk setiap objek dan nilainya bisa berbeda antar objek.

5. Instance Method: Instance Method adalah metode yang didefinisikan di dalam


sebuah class dan dijalankan pada objek-objek yang di-instantiate dari class
tersebut. Instance method biasanya digunakan untuk melakukan operasi atau
tindakan yang berhubungan dengan objek tersebut.

6. Class Variables atau static member variables: Class Variables atau static member
variables adalah variabel-variabel yang dideklarasikan di dalam sebuah class dan
memiliki nilai yang sama untuk semua objek yang di-instantiate dari class tersebut.
Class variables biasanya digunakan untuk menyimpan data yang bersifat umum
atau bersama antara objek-objek yang terkait dengan class tersebut.
29
7. Constructor: Constructor adalah sebuah metode khusus yang memiliki nama yang
sama dengan nama class dan digunakan untuk menginisialisasi objek baru yang di-
instantiate dari class tersebut. Constructor biasanya digunakan untuk memberikan
nilai awal pada atribut-atribut objek dan melakukan tindakan lain yang dibutuhkan
saat objek dibuat.

Java Scavanger Hunt

Pipoy adalah suatu anggota baru dalam bahasa pemrograman Java. Dia hanya
memperdengarkan bahwa telah ada APIs siap pakai dalam Java yang salah satunya
dapat digunakan dalam program mereka, dan ia ingin sekali untuk mengusahakan
mereka keluar. Masalahnya adalah, Pipoy tidak memiliki copy dari dokumentasi
Java, dan dia juga tidak memiliki acces internet, jadi tidak ada jalan untuknya untuk
menunjukkan Java APIs.

Tugas Anda adalah untuk membantu Pipoy memperhatikan APIs (Application


Programming Interface). Anda harus menyebutkan class dimana seharusnya
method berada, deklarasi method dan penggunaan contoh yang dinyatakan method.
Sebagai contoh, jika Pipoy ingin untuk mengetahui method yang mengknversisebuah
String ke integer,jawaban Anda seharusnya menjadi:

Class: Integer
Method Declaration: public static int parseInt( String value )
Sample Usage:
String strValue = "100";
int value = Integer.parseInt( strValue );

yakinkan bahwa snippet dari kode yang Anda tulis dalam contoh Anda
menggunakan compiles dan memberi output jawaban yang benar, jadi tidak
membingungkan Pipoy.(Hint: Semua methods adalah dalam java.lang package). Dalam
kasus dimana Anda dapat menemukan lebih banyak methods yang dapat menyelesaikan
tugas, berikan hanya satu.

Kode program :
class Main{
public static void main(String[] args) {
String strValue = "100";
int value = Integer.parseInt(strValue);

System.out.println(value);
}
}

30
Hasil :

Sekarang mari memulai pencarian!


1. Perhatikan sebuah method yang diuji jika String pasti diakhiri suffix yang pasti.
Sebagai contoh, jika diberikan string "Hello", Method harus mengembalikan nilai
true suffix yang diberikan adalah "lo", dan false jika suffix yang diberikan adalah
"alp".

Kode program :
class Main{
public static void main(String[] args) {
String str = "Hello";
boolean returnTrue = str.endsWith("lo"); // returns true
boolean returnFalse = str.endsWith("alp"); // returns false

System.out.println(returnTrue);
System.out.println(returnFalse);

}
}

Hasil :

2. Perhatikan untuk method yang mengenali character yang mewakili sebuah


digit yangspesifik dalam radix khusus. Sebagai contoh, jika input digit adalah 15,
dan the radix adalah 16, method akan mengembalikan Character F, sejak F
adalah representasi hexadecimal untuk angka 15 (berbasis 10).
Kode :

31
int digit = 10;
int radix = 15;

char result = Character.forDigit(digit, radix);


System.out.println(result);

Hasil :

3. Kode untuk mengakhiri program java yang sedang berjalan :

Maka tidak ada hasil :

4. Mengembalikan nilai 3 dari 3,3


Kode program :
class Main{
public static void main(String[] args) {
double value = 3.13;
int result = (int) Math.floor(value);
System.out.println(result);

Hasil :

5. Method yang mengenali jika charackter yang dipakai adalh sebuah digit, jika say ainput
'3' maka akan true

kode program :
char ch = '3';
boolean result2 = Character.isDigit(ch);
System.out.println(result2);
}
}

Hasil :

32
LATIHAN JENI BAB 10
• Entry Buku Alamat

Tugas Anda adalah membuat sebuah class yang memuat data-data pada buku alamat.Tabel
berikut mendefinisikan informasi yang dimiliki oleh buku alamat.

Attribut Deskripsi
Nama Nama Lengkap perseorangan
Alamat Alamat Lengkap
Nomor Telepon Nomor telepon personal
Alamat E-Mail Alamat E-Mail personal

Tabel 1: Atribut dan


Deskripsi Atribut

Buat implementasi dari method sebagai berikut :


1. Menyediakan accessor dan mutator method terhadap seluruh atribut
2. Constructor
11 public class Main{
12 public class AddressBook {
13 private String name;
14 private String address;
15 private String phoneNumber;
16 private String email;
17
18 public AddressBook(String name, String address, String
phoneNumber, String email) {
19 this.name = name;
20 this.address = address;
21 this.phoneNumber = phoneNumber;
22 this.email = email;
23 }
24
25 public String getName() {
26 return name;
27 }
28
29 public void setName(String name) {
30 this.name = name;
31 }
32
33 public String getAddress() {
33
34 return address;
35 }
36
37 public void setAddress(String address) {
38 this.address = address;
39 }
40
41 public String getPhoneNumber() {
42 return phoneNumber;
43 }
44
45 public void setPhoneNumber(String phoneNumber) {
46 this.phoneNumber = phoneNumber;
47 }
48
49 public String getEmail() {
50 return email;
51 }
52
53 public void setEmail(String email) {
54 this.email = email;
55 }

• Buku Alamat

Buat sebuah class buku alamat yang dapat menampung 100 data. Gunakan class yang telah
dibuat pada nomor pertama. Anda harus mengimplementasikan method berikut pada buku
alamat :
1. Memasukkan data
2. Menghapus data
3. Menampilkan seluruh data
4. Update data

56 public class BukuAlamat {


57 private AddressBook[] daftarAddressBook;
58 private int jumlahAddressBook;
59
60 public BukuAlamat() {
61 daftarAddressBook = new AddressBook[100];
62 jumlahAddressBook = 0;
63 }
64
65 public void tambahAddressBook(AddressBook AddressBook) {
66 if (jumlahAddressBook < 100) {
67 daftarAddressBook[jumlahAddressBook] = AddressBook;
68 jumlahAddressBook++;
69 } else {
70 System.out.println("Buku alamat sudah penuh!");
71 }
72 }
73
74 public void hapusAddressBook(int indeks) {
34
75 if (indeks >= 0 && indeks < jumlahAddressBook) {
76 for (int i = indeks; i < jumlahAddressBook - 1; i++) {
77 daftarAddressBook[i] = daftarAddressBook[i + 1];
78 }
79 daftarAddressBook[jumlahAddressBook - 1] = null;
80 jumlahAddressBook--;
81 } else {
82 System.out.println("Indeks AddressBook tidak valid!");
83 }
84 }
85

86 public void tampilkanSemuaAddressBook() {


87 if (jumlahAddressBook == 0) {
88 System.out.println("Buku alamat kosong.");
89 } else {
90 System.out.println("Daftar AddressBook:");
91 for (int i = 0; i < jumlahAddressBook; i++) {
92 System.out.println("AddressBook " + (i + 1));
93 System.out.println("Nama: " +
daftarAddressBook[i].getName());
94 System.out.println("Alamat: " +
daftarAddressBook[i].getAddress());
95 System.out.println("Nomor Telepon: " +
daftarAddressBook[i].getPhoneNumber());
96 System.out.println("Alamat Email: " +
daftarAddressBook[i].getEmail());
97 System.out.println();
98 }
99 }
100 }
101
102 public void updateAddressBook(int indeks, AddressBook
AddressBookBaru) {
103 if (indeks >= 0 && indeks < jumlahAddressBook) {
104 daftarAddressBook[indeks] = AddressBookBaru;
105 } else {
106 System.out.println("Indeks AddressBook tidak valid!");
107 }
108 }
109
110 public AddressBook[] getDaftarAddressBook() {
111 return daftarAddressBook;
112 }
113
114 public int getJumlahAddressBook() {
115 return jumlahAddressBook;
116 }
117 }

Main :
public static void main(String[] args) {
Main main = new Main();
35
AddressBook orang1 = main.new AddressBook("Dinda", "Kendal", "089652616158",
"Dinda_09@gmail.com");
AddressBook orang2 = main.new AddressBook("Naila", "Pati", "087784303525",
"bnlll@gmail.com");

AddressBook orang3 = main.new AddressBook("Bambang", "Pati", "087784303525",


"bnlll@gmail.com");

BukuAlamat bukuAlamat = main.new BukuAlamat();


bukuAlamat.tambahAddressBook(orang1); // menambahkan orang tersebut di daftar
kontak
bukuAlamat.tambahAddressBook(orang2);

bukuAlamat.updateAddressBook(1, orang3);

bukuAlamat.tampilkanSemuaAddressBook();

Output :

36
QUIZ 1
Mencetak piramida nomor
public class Main {
public static void main(String[] args) {
int a = 1;
for (int i = 1; i <= 3; i++) { // perulangan untuk tinggi dari piramida

for (int j = i; j <= 2; j++) { // perulangan untuk pembuatan spasi


System.out.print(" ");
}
for (int k = 0; k <= (i * 2) - 2; k++) { // perulangan mencetak
bintang untuk membentuk piramida
System.out.printf("%d", a);
a++;
}
System.out.println(); // untuk pindah baris
}
}
}

Hello java
public class hello{

public static void main(String[] args){


String name = "Dinda Mutiara Sukmaningrum";
System.out.println("Welcome to Java Programming : " + name);
}

The Tree
public class TheTree {
37
public static void main(String[] args) {
System.out.println("I Think that I shall never see");
System.out.println("a poem as lovely as a tree");
System.out.println("A tree whose hungry mouth is pressed");
System.out.println("Againts the Erath's sweet flowing breast");

}
}

38
QUIZ 2
Mencetak nilai terbesar dari tiga bilangan
package com.tutorial;

public class Main{

public static void main(String[] args){

int n= 5;

int[] x = {18,3,5,6,8};
int[] y = {29,3,6,7,3};
int[] z = {12,9,1,2,0};

int max = x[0];


int max2 = y[0];
int max3 = z[0];

int[] nilai = {1,2,3,1,1};

for (int i = 0; i < n; i++) {


max = (x[i] > max) ? x[i] : max;

for (int i = 0; i < n; i++) {


max2 = (y[i] > max2) ? y[i] : max2;
}

for (int i = 0; i < n; i++) {


max3 = (z[i] > max3) ? z[i] : max3;

int nilaiMaxSemua = nilai[0];

System.out.println("Nilai maksimum x adalah " + max);


nilai[0] = max;
System.out.println("Nilai maksimum y adalah " + max2);
nilai[1] = max2;
System.out.println("Nilai maksimum z adalah " + max3);
nilai[2] = max3;

for (int i = 0; i < n; i++) {


nilaiMaxSemua = (nilai[i] > nilaiMaxSemua) ? nilai[i] : nilaiMaxSemua;
}

System.out.println("Nilai dari max dari semuanya adalah : " + nilaiMaxSemua)


39
Output :

40
QUIZ 3 :
Membuat kalkulator dengan menggunakan JoptionPane
package com.tutorial;

import javax.swing.JOptionPane;

public class Main {

public static void main(String[] args) {


double x;
double y;

String msg = "Gagal menampilkan hasil";

double Hasil;
String kalkulator;

// KODE PENJUMLAHAN

kalkulator = JOptionPane.showInputDialog("KALKULATOR SEDERHANA\n1.


Penjumlahan\n2. Pengurangan\n3. Pembagian\n4. Perkalian");
if (kalkulator.equals("1")) {
x = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
1 : "));
y = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
2 : "));

int dialogButton = JOptionPane.showConfirmDialog(null, "Apakah anda ingin


melihat hasil ?", "WARNING",
JOptionPane.YES_NO_OPTION);

if (dialogButton == JOptionPane.YES_OPTION) {
Hasil = x + y;
JOptionPane.showMessageDialog(null, "Hasil dari penjumlahan antara\n "
+ x + " + " + y + " = " + Hasil);
} else {

JOptionPane.showMessageDialog(null, msg);
}

}
// KODE PENGURANGAN
if (kalkulator.equals("2")) {
x = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
1 : "));
y = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
2 : "));

int dialogButton = JOptionPane.showConfirmDialog(null, "Apakah anda ingin


melihat hasil ?", "WARNING",
JOptionPane.YES_NO_OPTION);
41
if (dialogButton == JOptionPane.YES_OPTION) {
Hasil = x - y;
JOptionPane.showMessageDialog(null, "Hasil dari pengurangan antara\n"
+ x + " - " + y + " = " + Hasil);
} else {

JOptionPane.showMessageDialog(null, msg);
}

}
// KODE PEMBAGIAN
if (kalkulator.equals("3")) {
x = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
1 : "));
y = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
2 : "));

int dialogButton = JOptionPane.showConfirmDialog(null, "Apakah anda ingin


melihat hasil ?", "WARNING",
JOptionPane.YES_NO_OPTION);

if (dialogButton == JOptionPane.YES_OPTION) {
Hasil = x / y;
JOptionPane.showMessageDialog(null, "Hasil dari pembagian antara\n" +
x + " / " + y + " = " + Hasil);
} else {

JOptionPane.showMessageDialog(null, msg);
}

}
// KODE PERKALIAN
if (kalkulator.equals("4")) {
x = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
1 : "));
y = Double.parseDouble(JOptionPane.showInputDialog(null, "Masukan variabel
2 : "));

int dialogButton = JOptionPane.showConfirmDialog(null, "Apakah anda ingin


melihat hasil ?", "WARNING",
JOptionPane.YES_NO_OPTION);

if (dialogButton == JOptionPane.YES_OPTION) {
Hasil = x * y;
JOptionPane.showMessageDialog(null, "Hasil dari perkalian antara\n" +
x + " * " + y + " = " + Hasil);
} else {

JOptionPane.showMessageDialog(null, msg);
}

}
42
Output :

43
QUIZ 4 :
mencetak bilangan terbesar dari tiga bilangan :
package quiz;

class quiz {
private int bilangan1 = 37;
private int bilangan2 = 2 ;
private int bilangan3 = 10;

public void tampilBilangan(){


System.out.println("Bilangan 1 : " + bilangan1);
System.out.println("Bilangan 2 : " + bilangan2);
System.out.println("Bilangan 3 : " + bilangan3);
}

public double nilaiRataRata(){


double rata_rata;
rata_rata = this.bilangan1+this.bilangan2+this.bilangan3 / 3;
return rata_rata;
}

public int nilaiTerbesar(){


int terbesar;
terbesar = (this.bilangan1 > this.bilangan2) ? ((this.bilangan1 >
this.bilangan3) ? this.bilangan1 : this.bilangan3) : ((this.bilangan2 >
this.bilangan3) ? this.bilangan2 : this.bilangan3);
return terbesar;
}
}

public class Main {


public static void main(String[] args) {
quiz quiz1 = new quiz();

System.out.println("----------- OUTPUT --------------");

quiz1.tampilBilangan();

System.out.println("Nilai Rata - rata dari bilangan adalah : " +


quiz1.nilaiRataRata());
System.out.println("Nilai yang terbesar adalah angka : " +
quiz1.nilaiTerbesar());

}
}

Contoh :
44
45
QUIZ 5 :
Class Student record :
class StudentRecord {
private String name;
private String address;
private int age;
private double mathGrade;
private double englishGrade;
private double scienceGrade;
private double average;
private double rataRataMurid;
private double rataRataKelas;
private static int studentCount;

StudentRecord(){
studentCount++;
}

public void getRataaRataMurid(double average) {


average = (englishGrade + scienceGrade + mathGrade) / 3;
}

public void setName(String temp) {


name = temp;
}

public String getName() {


return name;
}

public void getRataRataKelas(double average) {


getRataRataMurid(average);
}

public void setEnglishGrade(double englishGrade) {


this.englishGrade = englishGrade;
}

public double getEnglishGrade() {


return englishGrade;
}

public void setScienceGrade(double scienceGrade) {


this.scienceGrade = scienceGrade;
}

public double getScienceGrade() {


return scienceGrade;
46
}

public void setMathGrade(double mathGrade) {


this.mathGrade = mathGrade;
}

public double getMathGrade() {


return mathGrade;
}

public double getRataRataMurid() {


double result = 0;
result = (mathGrade + englishGrade + scienceGrade) / 3;
return result;
}

public int setAge(int temp){


age = temp;
return age;
}

public int getAge() {


return age;
}

public void setAddress(String address) {


this.address = address;
}

public String getAddress() {


return address;
}
/**
* Menghasilkan jumlah instance StudentRecord
*/
public static int getStudentCount() {
return studentCount;
}

Main :
class Main {

public static void main(String[] args) {


// membuat 3 object StudentRecord
StudentRecord annaRecord = new StudentRecord();
StudentRecord beahRecord = new StudentRecord();
StudentRecord crisRecord = new StudentRecord();
// Memberi nama siswa
annaRecord.setName("Anna");
47
annaRecord.setEnglishGrade(8);
annaRecord.setMathGrade(8);
annaRecord.setScienceGrade(9);
double annaRata2 = annaRecord.getRataRataMurid();

beahRecord.setName("Beah");
beahRecord.setEnglishGrade(9);
beahRecord.setMathGrade(7);
beahRecord.setScienceGrade(5.5);
double beahRata2 = beahRecord.getRataRataMurid();

crisRecord.setName("Cris");
crisRecord.setMathGrade(4.5);
crisRecord.setEnglishGrade(6);
crisRecord.setScienceGrade(6.5);
double crisRata2 = crisRecord.getRataRataMurid();

System.out.println("Nama | Matematika | English | Sciene |


Rata-rata |");
System.out.printf(annaRecord.getName()+" | "+annaRecord.getMathGrade()+"
| "+annaRecord.getEnglishGrade()+" | "+annaRecord.getScienceGrade()+
" | %.2f\n",annaRecord.getRataRataMurid());
System.out.printf(beahRecord.getName()+" | "+beahRecord.getMathGrade()+"
| "+beahRecord.getEnglishGrade()+" | "+beahRecord.getScienceGrade()+
" | %.2f\n",beahRecord.getRataRataMurid());
System.out.printf(crisRecord.getName()+" | "+crisRecord.getMathGrade()+"
| "+crisRecord.getEnglishGrade()+" | "+crisRecord.getScienceGrade()+
" | %.2f\n",crisRecord.getRataRataMurid());

double rataRataKelas = (annaRata2+beahRata2+crisRata2) / 3;

System.out.printf("Nilai rata-rata dari ketiga siswa adalah =


%.2f",rataRataKelas);

}
}

Output :

48

Anda mungkin juga menyukai