Latihan Kode Program Java: Menghitung Luas Permukaan dan Volume Tabung

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


Soal Luas Permukaan dan Volume Tabung

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

Kode program butuh 2 inputan berupa jari-jari tabung dan tinggi tabung. Kemudian tampilkan output luas permukaan dan volume tabung.

Bonus soal: buat juga dalam bentuk function.

Berikut contoh tampilan akhir yang diinginkan (1) :

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

Input jari-jari tabung: 8
Input tinggi tabung: 16

Luas permukaan Tabung = 1206.86
Volume Tabung = 3218.29

Berikut contoh tampilan akhir yang diinginkan (2) :

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

Input jari-jari tabung: 12.75
Input tinggi tabung: 8.25

Luas permukaan Tabung = 1683.0
Volume Tabung = 4215.01

Silahkan coba sebentar membuat kode program ini.


Tips Membuat Kode Program Luas Permukaan dan Volume Tabung

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

Dikutip dari wikipedia, Tabung atau silinder adalah bangun ruang tiga dimensi yang dibentuk oleh dua buah lingkaran identik yang sejajar dan sebuah persegi panjang yang mengelilingi kedua lingkaran tersebut. Tabung memiliki 3 sisi dan 2 rusuk.

Kedua lingkaran disebut sebagai alas dan tutup tabung serta persegi panjang yang menyelimutinya disebut sebagai selimut tabung.

Berikut rumus untuk menghitung luas permukaan dan volume tabung:

  • Rumus luas permukaan tabung: 2 × Ï€ × r × (r + t).
  • Rumus volume tabung adalah: π × t × r2.

Dimana π = 22/7 atau 3.14, r = jari-jari tabung, dan t = tinggi tabung.

Berikut gambar ilustrasi tabung:

Ilustrasi gambar tabung


Kode Program Java Menghitung Luas Permukaan dan Volume Tabung

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

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

Latihan Kode Program Java - Menghitung Luas Permukaan dan Volume Tabung

Agar bisa berjalan, save kode program diatas ke dalam file LuasVolumeTabung.java, lalu compile dengan perintah javac LuasVolumeTabung.java, dan jalankan (run) dengan perintah java LuasVolumeTabung. 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 LuasVolumeTabung, 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 jari2, 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 jari-jari dan tinggi tabung antara baris 15-18.

Nilai ini selanjutnya dipakai untuk menghitung luas permukaan tabung dengan perintah luas_permukaan = 2 * (22.0/7.0) * jari2 * (jari2 + tinggi) serta menghitung volume tabung dengan perintah volume = (22.0/7.0) * tinggi * jari2 * jari2.

Agar tampilan angka pecahan menjadi lebih rapi, di baris 23 dan 26 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 tabung ditampilkan di baris 28-29.

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 LuasVolumeTabung { 
  public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("# Program Java Luas Permukaan & Volume Tabung #");
    System.out.println("===============================================");
    System.out.println();
     
    double jari2, tinggi;
 
    System.out.print("Input jari-jari tabung: ");
    jari2 = input.nextDouble();
    System.out.print("Input tinggi tabung: ");
    tinggi = input.nextDouble();
    
    System.out.println();
     
    System.out.println("Luas permukaan Tabung = "
                  +Math.round((2 * (22.0/7.0) * jari2 * (jari2 + tinggi)) 
				  * 100)/100.0);
    System.out.println("Volume Tabung = "
	              +Math.round(((22.0/7.0) * tinggi * jari2 * jari2) 
				  * 100)/100.0);
 
    input.close();
  }
}

Setelah menerima semua inputan, di baris 22-27 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 tabung di tempat lain.


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

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

import java.util.Scanner;
import java.util.Locale;
 
class LuasVolumeTabung {
	
  static double hitungLuasPermukaanTabung(double r, double t) {
    return Math.round((2 * (22.0/7.0) * r * (r + t)) * 100)/100.0;
  }
  
  static double hitungVolumeTabung(double r, double t) {
    return Math.round(((22.0/7.0) * t * r * r) * 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 Tabung #");
    System.out.println("===============================================");
    System.out.println();
     
    double jari2, tinggi;
 
    System.out.print("Input jari-jari tabung: ");
    jari2 = input.nextDouble();
    System.out.print("Input tinggi tabung: ");
    tinggi = input.nextDouble();
	
    System.out.println();
     
    System.out.println("Luas permukaan Tabung = "
          +hitungLuasPermukaanTabung(jari2,tinggi));
    System.out.println("Volume Tabung = "
          +hitungVolumeTabung(jari2,tinggi));
 
    input.close();
  }
}

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

Fungsi hitungLuasPermukaanTabung() berisi perintah yang langsung mengembalikan hasil perhitungan Math.round((2 * (22.0/7.0) * r * (r + t)) * 100)/100.0 di baris 7. Dan fungsi hitungVolumeTabung() juga berisi 1 perintah yang mengembalikan hasil dari Math.round(((22.0/7.0) * t * r * r) * 100)/100.0.

Proses pemanggilan fungsi dilakukan dari dalam perintah System.out.println() di baris 31-34. Nilai variabel jari-jari yang diinput oleh user, dilewatkan sebagai parameter menjadi hitungLuasPermukaanTabung(jari2,tinggi) dan hitungVolumeTabung(jari2,tinggi).


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

Add Comment