Disusun Oleh :
Nama : Dinda Mutiara Sukmaningrum
NIM : 4.33.22.1.07
Kelas : TI-1B
Mata Kuliah : Pemrograman Berorientasi Objek
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
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
Hello World!
Menggunakan NetBeans, membuat class dengan nama : [NamaAnda]. Hasil dari program yang
harus tampil di layar :
Kode program :
package com.tutorial;
Hasil Program :
The Tree
Menggunakan NetBeans, membuat class dengan nama : TheTree. Hasil dari program yang harus
tampil dilayar :
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
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";
Hasil program :
number 1 = 10
number 2 = 20
number 3 = 45
Rata-rata = 25
Kode proram :
Hasil program :
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;
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
Kode program :
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
try{
name1 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}
try{
name2 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}
try{
10
name3 = datain.readLine();
}
catch(IOException e){
System.out.println("Error!");
}
Hasil program :
11
Gambar 3: Menampilkan Pesan
Kode program :
package com.tutorial;
import javax.swing.JOptionPane;
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;
try {
System.out.println("Masukkan nilai ujian ke-1: ");
int nilai1 = Integer.parseInt(reader.readLine());
14
Hasil ☹ :
2. Gunakan JOptionPane untuk mendapat input dari user dan output hasilnya.
Kode program :
import javax.swing.JOptionPane;
15
JOptionPane.showMessageDialog(null, "Input tidak valid. Harap masukkan
angka.");
}
}
}
Hasil 😊 :
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;
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";
}
Hasil :
17
2. Gunakan statement switch untuk menyelesaikan
Kode program :
Scanner scanner = new Scanner(System.in);
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;
}
18
Hasil :
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;
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);
For loop :
public class Main {
public static void main(String[] args) {
int base = 2;
int exponent = 5;
int result = 1;
21
LATIHAN JENI BAB 7
Hari dalam seminggu
Buatlah sebuah String array yang akan menginisialisasi 7 hari dalam seminggu. Sebagai
contoh,
Gunakan while-loop, kemudian print semua nilai dari array (Gunakan juga untuk do- while
dan for-loop)Using a while-loop.
While loop :
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"};
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;
Hasil program :
24
Buku Alamat
Berikut ini adalah array multidimensi yang menyatakan isi dari sebuah buku alamat:
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"}
};
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
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.");
}
}
}
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
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;
}
quotient = 5
Hasil program :
Ketik “ java namaClass.java 20 4 “
28
LATIHAN JENI BAB 9
Latihan
Mendefinisikan Istilah
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.
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.
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.
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 :
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 :
31
int digit = 10;
int radix = 15;
Hasil :
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
• 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
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");
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
Hello java
public class hello{
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;
int n= 5;
int[] x = {18,3,5,6,8};
int[] y = {29,3,6,7,3};
int[] z = {12,9,1,2,0};
40
QUIZ 3 :
Membuat kalkulator dengan menggunakan JoptionPane
package com.tutorial;
import javax.swing.JOptionPane;
double Hasil;
String kalkulator;
// KODE PENJUMLAHAN
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 : "));
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 : "));
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 : "));
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;
quiz1.tampilBilangan();
}
}
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++;
}
Main :
class Main {
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();
}
}
Output :
48