1. Dokumen tersebut merupakan lembar jawaban mahasiswa mengenai latihan penggunaan Scanner di Java dan penanganan exception.
2. Diberikan contoh kode program tank yang menggunakan class dan objek serta input output menggunakan Scanner.
3. Dijelaskan cara menghentikan program dengan menggunakan method System.exit() untuk mengatasi masalah program yang terus berjalan.
Latihan 1 Kode Program Java Mengimpor Scanner ke Program.pdf
1. 1
LEMBAR JAWABAN
LATIHAN 1
SEMESTER GANJIL TAHUN AJARAN 2022/2023
Mata Kuliah : Pemrograman Berorientasi Objek
Kelas : IT-301
Prodi : PJJ Informatika
Nama Mahasiswa : Hendro Gunawan
NIM : 200401072103
Dosen : Catur Nugroho S.Kom, M.Kom.
Kode Program Java Mengimpor Scanner ke Program
1. Berikut adalah salah satu contoh mengimpor scanner ke program menggunakan bahasa pemrograman
Java:
2. 2
//mengimpor Scanner ke program import
java.util.Scanner; class
ScannerExample {
public static void main(String args[]){
String nama,alamat;
int usia; double ipk;
// membuat Scanner baru
Scanner keyboard = new Scanner(System.in);
System.out.println("##Biodata Mahasiswa##");
System.out.println("=====================");
System.out.println();
System.out.print("Nama: "); //
dengan perintah Scanner nama =
keyboard.nextLine();
System.out.println("Nama kamu adalah " + nama);
System.out.print("Alamat: "); //
dengan perintah Scanner alamat =
keyboard.nextLine();
System.out.println("Alamat kamu adalah " + alamat);
// nextInteger digunakan untuk perintah dan mengambil type data integer
System.out.print("Usia: "); usia = keyboard.nextInt();
System.out.println("Usia kamu adalah " + usia);
// nextDouble digunakan untuk perintah dan mengambil type data Double
System.out.print("IPK: "); ipk = keyboard.nextDouble();
System.out.println("IPK kamu adalah " + ipk);
System.out.println("=====================");
System.out.println();
System.out.print(nama + " beralamat di " + alamat);
System.out.print(" berusia " + usia + " tahun, ");
System.out.print("memiliki IPK " + ipk);
System.out.println();
System.out.println("Terima kasih");
System.out.println();
}
}
Hasil dari running program adalah sebagai berikut:
3. 3
Contoh jika terjadi Exception Handling seperti pada program berikut:
Maka cara menyelesaikannya adalah menggunakan keyword try-catch seperti pada perintah di bawah
ini:
//mengimpor Scanner ke program
import java.util.Scanner;
class JavaExceptionHandlingTryandCatch {
public static void main(String args[]){
String nama,alamat;
int usia,telepon;
// membuat Scanner baru
Scanner keyboard = new Scanner(System.in);
System.out.println("##Biodata Mahasiswa##");
System.out.println("=====================");
System.out.println();
System.out.print("Nama: ");
// dengan perintah Scanner
nama = keyboard.nextLine();
System.out.println("Nama: kamu adalah " + nama);
System.out.print("Alamat: ");
4. 4
// dengan perintah Scanner
alamat = keyboard.nextLine();
System.out.println("Alamat: kamu adalah " + alamat);
// nextInt digunakan untuk perintah dan mengambil type data integer
System.out.print("Usia: ");
usia = keyboard.nextInt();
System.out.println("Usia: kamu adalah " + usia);
// gunakan try and catch untuk memperbaiki kesalahan
try {
// pernyataan yang berpotensi mengakibatkan Exception
System.out.print("Telepon: ");
telepon = keyboard.nextInt();
System.out.println("Telepon: kamu adalah " + telepon);
} catch (java.util.InputMismatchException e) {
// pernyataan disini akan di eksekusi jika terjadi Exception
System.out.println("Maaf terjadi kesalahan");
}
System.out.println("=====================");
System.out.println();
}
}
Setelah di running maka hasilnya adalah sebagai berikut:
2. Berikut adalah program Java tank.
Kode programnya adalah sebagai berikut:
5. 5
import java.util.Scanner;
public class tank {
String namaProdusen;
int kapasitasBerat;
int jumlahPenumpang;
int tahunProduksi;
boolean masihLayakTempur;
public tank(String namaProdusen, int kapasitasBerat, int tahunProduksi) {
this.namaProdusen = namaProdusen;
this.kapasitasBerat = kapasitasBerat;
this.tahunProduksi = tahunProduksi;
this.masihLayakTempur = true;
this.jumlahPenumpang = 0;
}
public boolean tempur (int kapasitasBeratTempur) {
if(masihLayakTempur &&
kapasitasBerat >= kapasitasBeratTempur &&
tahunProduksi >2014) {
this.jumlahPenumpang++;
if(jumlahPenumpang > 5 ) {
masihLayakTempur = false;
}
return true;
}
else{
return false;
}
}
public int getJumlahkapasitasBerat() {
return kapasitasBerat;
}
public boolean getmasihLayakTempur() {
return masihLayakTempur;
}
public int getJumlahPenumpang() {
return jumlahPenumpang;
}
public int getTahunProduksi() {
return tahunProduksi;
}
public static void main(String args[]) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Masukkan Nama Produsen: ");
String namaProdusen = keyboard.nextLine();
System.out.print("Masukkan kapasitas Berat: ");
int kapasitasBerat = keyboard.nextInt();
System.out.print("Masukkan tahun Produksi: ");
6. 6
int tahunProduksi = keyboard.nextInt();
tank Tank = new tank(namaProdusen, kapasitasBerat, tahunProduksi);
while(keyboard.hasNextLine()) {
System.out.println("Apakah tank akan tempur ? (y/n)");
if(keyboard.nextLine().equals("y")) {
System.out.println("Berapa beratnya? ");
int kapasitasBeratTempur = keyboard.nextInt();
if(Tank.tempur(kapasitasBeratTempur)) {
System.out.println("Tank boleh tempur");
}
else{
System.out.println("Tank tidak boleh tempur");
}
}
}
}
}
Setelah dieksekusi maka hasilnya adalah sebagai berikut:
Program akan terus berjalan dan tidak akan berhenti jika tidak terjadi error. Untuk mengatasi masalah ini
maka kita harus menghentikannya dengan cara menggunakan metode java.lang.System.exit().
import java.util.Scanner;
public class SistemExit0 {
String namaProdusen;
int kapasitasBerat;
int jumlahPenumpang;
int tahunProduksi;
boolean masihLayakTempur;
public SistemExit0(String namaProdusen, int kapasitasBerat, int tahunProduksi) {
7. 7
this.namaProdusen = namaProdusen;
this.kapasitasBerat = kapasitasBerat;
this.tahunProduksi = tahunProduksi;
this.masihLayakTempur = true;
this.jumlahPenumpang = 0;
}
public boolean tempur (int kapasitasBeratTempur) {
if(masihLayakTempur &&
kapasitasBerat >= kapasitasBeratTempur &&
tahunProduksi >2014) {
this.jumlahPenumpang++;
if(jumlahPenumpang > 5 ) {
masihLayakTempur = false;
}
return true;
}
else{
return false;
}
}
public int getJumlahkapasitasBerat() {
return kapasitasBerat;
}
public boolean getmasihLayakTempur() {
return masihLayakTempur;
}
public int getJumlahPenumpang() {
return jumlahPenumpang;
}
public int getTahunProduksi() {
return tahunProduksi;
}
public static void main(String args[]) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Masukkan Nama Produsen: ");
String namaProdusen = keyboard.nextLine();
System.out.print("Masukkan kapasitas Berat: ");
int kapasitasBerat = keyboard.nextInt();
System.out.print("Masukkan tahun Produksi: ");
int tahunProduksi = keyboard.nextInt();
tank Tank = new tank(namaProdusen, kapasitasBerat, tahunProduksi);
while(keyboard.hasNextLine()) {
System.out.println("Apakah tank akan tempur ? (y/n)");
if(keyboard.nextLine().equals("y")) {
System.out.println("Berapa beratnya? ");
int kapasitasBeratTempur = keyboard.nextInt();
if(Tank.tempur(kapasitasBeratTempur)) {
System.out.println("Tank boleh tempur");
9. 9
Nilai
Tanda Tangan Dosen Pengampu /
Tutor
Tanda Tangan
Mahasiswa
(Catur Nugroho S.Com, M.Com) (Hendro Gunawan)
Diserahkan pada Tanggal: Tanggal Mengumpulkan:
06/11/2022