Bantu pliss soal ada di foto​

Posted on

Bantu pliss soal ada di foto​

Bantu pliss soal ada di foto​

Jawaban dan Penjelasan:

Soal a

Identifikasi Kesalahan

Kesalahan tidak terletak pada sintaks maupun logic program, tetapi terletak pada masukan. Dengan baris program "umur = input.nextInt();", yang diharapkan adalah masukan berupa bilangan bulat (integer).

Koreksi

Cara 1: menggunakan cara manual, katakan pada user bahwa inputnya harus bilangan bulat. 😀

Cara 2:

Lakukan isolasi terhadap exception yang mungkin terjadi karena kesalahan masukan dari user, misalnya dengan try…catch, dipadukan dengan looping sehingga program terus meminta masukan apabila terjadi kesalahan masukan.

Misalnya, untuk baris 7 dan 8 diganti menjadi seperti ini:

// —— koreksi

do {

   try {

       System.out.print("Masukkan umur : ");

       umur = input.nextInt();

       if (umur <= 0) {

           throw new Exception("Mana mungkin umur bernilai negatif. Yang benar donk!");

       }

   } catch (InputMismatchException e) {

       System.out.print("Masukan yang kamu berikan salah. Silahkan masukkan angka umur yang benar.");

   } catch (Exception e) {

       // untuk menangani jenis eksepsi lain

       System.out.print(e.getMessage());

   }

   input.nextLine(); // clear buffer

} while (umur <=0);

// —— akhir koreksi

Soal b

Identifikasi Kesalahan

Kesalahan terletak pada logic program. Mungkin si programmer salah ketik operator, seharusnya operator kali (*), tapi diketik tambah (+).

Koreksi

Tinggal mengganti tanda operator tambah di baris ke-11 menjadi kali, sehingga baris ke-11 menjadi:

System.out.println("Luas persegi : " + (panjang*lebar));