Latihan Kode Program Java: Menghitung Luas Permukaan dan Volume Balok

Latihan kode program bahasa Java kali ini akan membahas cara menghitung luas permukaan dan volume balok. Materi ini berhubungan dengan logika matematika dan penggunaan operator aritmatika.


Soal Luas Permukaan dan Volume Balok

Buatlah kode program dalam bahasa Java untuk menghitung luas permukaan dan volume balok.

Kode program butuh 3 inputan berupa panjang, lebar dan tinggi balok. Kemudian tampilkan output luas permukaan dan volume balok.

Bonus soal: buat juga dalam bentuk function.

Berikut contoh tampilan akhir yang diinginkan (1) :

# Program Java Luas Permukaan & Volume Balok #
==============================================

Input panjang balok: 8
Input lebar balok: 12
Input tinggi balok: 4

Luas permukaan balok = 352.0
Volume balok = 384.0

Berikut contoh tampilan akhir yang diinginkan (2) :

# Program Java Luas Permukaan & Volume Balok #
==============================================

Input panjang balok: 5.75
Input lebar balok: 10.25
Input tinggi balok: 15.50

Luas permukaan balok = 613.88
Volume balok = 913.53

Silahkan coba sebentar membuat kode program ini.


Tips Membuat Kode Program Luas Permukaan dan Volume Balok

Soal ini melatih pemahaman terkait logika matematika dan penggunaan operator aritmatika. Berikut tutorial pendahuluan yang bisa diikuti:

Dikutip dari wikipediaBalok adalah bangun ruang tiga dimensi yang dibentuk oleh tiga pasang persegi atau persegi panjang, dengan paling tidak satu pasang di antaranya berukuran berbeda.

Balok memiliki 6 sisi, 12 rusuk dan 8 titik sudut. Balok yang dibentuk oleh enam persegi sama dan sebangun disebut sebagai kubus.

Ilustrasi gambar balok

Ilustrasi gambar balok

Berikut rumus untuk menghitung luas permukaan dan volume balok:

  • Rumus luas permukaan balok: (2 × p × l) + (2 × p × t) + (2 × l × t).
  • Rumus volume balok adalah: p × l × t.

Dimana: p = panjang balok, l = lebar balok, dan t = tinggi balok.


Kode Program Java Menghitung Luas Permukaan dan Volume Balok

Berikut salah satu solusi dari soal menghitung luas permukaan dan volume balok menggunakan bahasa pemrograman Java:

import java.util.Scanner;
import java.util.Locale;
 
class LuasVolumeBalok {
  public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("# Program Java Luas Permukaan & Volume Balok #");
    System.out.println("==============================================");
    System.out.println();
     
    double panjang, lebar, tinggi, luas_permukaan, volume;
 
    System.out.print("Input panjang balok: ");
    panjang = input.nextDouble();
    System.out.print("Input lebar balok: ");
    lebar = input.nextDouble();
    System.out.print("Input tinggi balok: ");
    tinggi = input.nextDouble();
	
    System.out.println();
    
    luas_permukaan = 2*(panjang*lebar)+2*(panjang*tinggi)+
	                 2*(lebar*tinggi);
    luas_permukaan = Math.round(luas_permukaan * 100)/100.0;
	
    volume = panjang * lebar * tinggi;
    volume = Math.round(volume * 100)/100.0;
	
    System.out.println("Luas permukaan balok = "+luas_permukaan);
    System.out.println("Volume balok = "+volume);
 
    input.close();
  }
}

Latihan Kode Program Java - Menghitung Luas Permukaan dan Volume Balok

Agar bisa berjalan, save kode program diatas ke dalam file LuasVolumeBalok.java, lalu compile dengan perintah javac LuasVolumeBalok.java, dan jalankan (run) dengan perintah java LuasVolumeBalok. Panduan lebih lengkap bisa ke Cara Menjalankan kode Program Java (Proses Compile).

Di awal kode program terdapat perintah untuk mengimport 2 class package bawaan Java, yakni java.util.Scanner dan java.util.Locale.

Class Scanner diperlukan sebagai cara menerima input dalam bahasa Java, sedangkan class Locale dipakai agar proses input angka pecahan menjadi seragam (menggunakan tanda titik sebagai tanda pecahan).

Masuk ke dalam class LuasVolumeBalok, di baris 7 terdapat perintah Scanner input = new Scanner(System.in).useLocale(Locale.US). Ini adalah proses pembuatan object dari class Scanner agar kita bisa membaca kode inputan dengan bahasa Java.

Kemudian di baris 13 terdapat deklarasi variabel panjang, lebar, tinggi, luas_permukaan, dan volume bertipe double. Disini saya menggunakan tipe data double agar nilai perhitungan bisa menampung angka pecahan.

Kemudian user diminta menginput nilai panjang, lebar, dan tinggi antara baris 15-20.

Nilai ini selanjutnya dipakai untuk menghitung luas permukaan balok dengan perintah luas_permukaan = 2*(panjang*lebar)+2*(panjang*tinggi)+2*(lebar*tinggi) serta menghitung volume balok dengan perintah volume = panjang * lebar * tinggi.

Agar tampilan angka pecahan menjadi lebih rapi, di baris 26 dan 29 hasil variabel luas_permukaan dan volume di bulatkan ke dalam 2 tempat desimal menggunakan method Math.round() bawaan bahasa Java.

Terakhir, luas permukaan dan volume balok ditampilkan di baris 25-26.

Proses perhitungan luas permukaan dan volume sebenarnya juga bisa langsung dilakukan ke dalam perintah System.out.println(), tidak harus ditampung dulu ke variabel terlebih dahulu. Berikut contoh yang dimaksud:

import java.util.Scanner;
import java.util.Locale;
 
class LuasVolumeBalok {
  public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("# Program Java Luas Permukaan & Volume Balok #");
    System.out.println("==============================================");
    System.out.println();
     
    double panjang, lebar, tinggi;
 
    System.out.print("Input panjang balok: ");
    panjang = input.nextDouble();
    System.out.print("Input lebar balok: ");
    lebar = input.nextDouble();
    System.out.print("Input tinggi balok: ");
    tinggi = input.nextDouble();
	
    System.out.println();
    	
    System.out.println("Luas permukaan balok = "
	            +Math.round((2*(panjang*lebar)+2*(panjang*tinggi)+
	            2*(lebar*tinggi)) * 100)/100.0);
    System.out.println("Volume balok = "
	            +Math.round(panjang * lebar * tinggi * 100)/100.0);
 
    input.close();
  }
}

Setelah menerima semua inputan, di baris 24-28 perhitungan luas permukaan dan volume langsung ditulis ke dalam perintah System.out.println().

Penulisan seperti ini memang lebih singkat. Namun kelemahannya kita harus melakukan perhitungan ulang jika butuh nilai luas dan volume balok di tempat lain.


Kode Program Java Menghitung Luas Permukaan dan Volume Balok (Function)

Untuk soal bonus, yakni membuat kode program menghitung luas permukaan dan volume balok dalam bentuk function, bisa menggunakan kode berikut:

import java.util.Scanner;
import java.util.Locale;
 
class LuasVolumeBalok {
	
  static double hitungLuasPermukaanBalok(double p, double l, double t) {
    return Math.round((2*(p*l) + 2*(p*t) + 2*(l*t)) * 100)/100.0;
  }
  
  static double hitungVolumeBalok(double p, double l, double t) {
    return Math.round((p*l*t) * 100)/100.0;
  }
 
  public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("# Program Java Luas Permukaan & Volume Balok #");
    System.out.println("==============================================");
    System.out.println();
     
    double panjang, lebar, tinggi;
 
    System.out.print("Input panjang balok: ");
    panjang = input.nextDouble();
    System.out.print("Input lebar balok: ");
    lebar = input.nextDouble();
    System.out.print("Input tinggi balok: ");
    tinggi = input.nextDouble();
	
    System.out.println();
     
    System.out.println("Luas permukaan balok = "
          +hitungLuasPermukaanBalok(panjang,lebar,tinggi));
    System.out.println("Volume balok = "
          +hitungVolumeBalok(panjang,lebar,tinggi));
 
    input.close();
  }
}

Di awal kode program, tepatnya pada baris 6-12, saya mendefinisikan 2 fungsi: hitungLuasPermukaanBalok() dan hitungVolumeBalok(). Kedua fungsi menerima 3 argument yang disimpan ke dalam parameter pl dan t.

Fungsi hitungLuasPermukaanBalok() berisi perintah yang langsung mengembalikan hasil perhitungan Math.round((2*(p*l) + 2*(p*t) + 2*(l*t)) * 100)/100.0 di baris 7. Dan fungsi hitungVolumeBalok() juga berisi 1 perintah yang mengembalikan hasil dari Math.round((p*l*t) * 100)/100.0.

Proses pemanggilan fungsi dilakukan dari dalam perintah System.out.println() di baris 23-36. Nilai variabel panjang, lebar dan tinggi yang diinput oleh user, dilewatkan sebagai parameter menjadi hitungLuasPermukaanBalok(panjang,lebar,tinggi) dan hitungVolumeBalok(panjang,lebar,tinggi).


Demikian kode program menghitung luas permukaan balok dan volume balok menggunakan bahasa pemrograman Java. Semoga tutorial ini bisa bermanfaat.

Add Comment