Latihan kode program bahasa Java kali ini akan membahas cara menghitung luas belah ketupat. Materi ini berhubungan dengan logika matematika dan penggunaan operator aritmatika.
Soal Menghitung Luas Belah Ketupat
Buatlah kode program dalam bahasa Java untuk menghitung luas belah ketupat. Kode program butuh 2 inputan berupa panjang diagonal 1 dan panjang diagonal 2. Kemudian tampilkan output luas belah ketupat.
Bonus soal: buat juga dalam bentuk function.
Berikut contoh tampilan akhir yang diinginkan (1) :
## Program Java - Luas Belah Ketupat ## ========================================= Input panjang diagonal 1: 20 Input panjang diagonal 2: 40 Luas belah ketupat = 400.0
Berikut contoh tampilan akhir yang diinginkan (2) :
## Program Java - Luas Belah Ketupat ## ========================================= Input panjang diagonal 1: 10.25 Input panjang diagonal 2: 15.75 Luas belah ketupat = 80.72
Silahkan coba sebentar membuat kode program ini.
Tips Membuat Kode Program Menghitung Luas Belah Ketupat
Soal ini melatih pemahaman terkait logika matematika dan penggunaan operator aritmatika. Berikut tutorial pendahuluan yang bisa diikuti:
- Pengertian dan Cara Penulisan Variabel Bahasa Java
- Cara Menginput Data ke dalam Bahasa Java
- Tipe Data Float dan Double Bahasa Pemrograman Java
- Jenis-jenis Operator Aritmatika Bahasa Java
- Pengertian Function (Fungsi) Bahasa Java
Dikutip dari wikipedia, Belah Ketupat adalah bangun datar dua dimensi yang dibentuk oleh empat buah segitiga siku siku masing-masing sama besar dengan sudut di hadapannya.
Rumus untuk menghitung luas belah ketupat adalah 1/2 * (panjang diagonal 1 + panjang diagonal 2).
Berikut ilustrasi rumus luas belah ketupat:
Kode Program Java Menghitung Luas Belah Ketupat
Berikut salah satu solusi dari soal menghitung luas belah ketupat menggunakan bahasa pemrograman Java:
import java.util.Scanner; import java.util.Locale; class LuasBelahKetupat { public static void main(String args[]){ Scanner input = new Scanner(System.in).useLocale(Locale.US); System.out.println("## Program Java - Luas Belah Ketupat ##"); System.out.println("========================================="); System.out.println(); double diagonal1, diagonal2, luas; System.out.print("Input panjang diagonal 1: "); diagonal1 = input.nextDouble(); System.out.print("Input panjang diagonal 2: "); diagonal2 = input.nextDouble(); luas = 0.5 * diagonal1 * diagonal2; luas = Math.round(luas*100)/100.0; System.out.println("Luas belah ketupat = "+luas); } }
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 LuasBelahKetupat, 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 diagonal1, diagonal2Â dan luas bertipe double. Disini saya menggunakan tipe data double agar nilai input diagonal dan luas belah ketupat bisa menampung angka pecahan.
Kemudian user diminta menginput nilai diagonal 1 dan diagonal 2 dengan perintah input.nextDouble()
antara baris 15-18. Nilai ini kemudian dipakai untuk menghitung luas belah ketupat dengan perintah luas = 0.5 * diagonal1 * diagonal2.
Agar tampilan angka pecahan menjadi lebih rapi, di baris 22 hasil variabel luas di bulatkan ke dalam 2 tempat desimal menggunakan method Math.round() bawaan bahasa Java.
Akan tetapi kita butuh sedikit trik karena method Math.round() langsung membulatkan ke integer terdekat, bukan ke pecahan. Triknya adalah: cari hasil dari luas*100, input ke dalam method Math.round(), lalu baru dibagi lagi dengan angka 100.0.
Dengan cara ini, variabel luas sudah berisi angka pecahan dengan 2 tempat desimal. Terakhir, luas belah ketupat ditampilkan di baris 23.
Proses perhitungan luas sebenarnya juga bisa langsung dilakukan ke dalam perintah System.out.println(), tidak harus ditampung dulu ke variabel luas terlebih dahulu. Berikut contoh yang dimaksud:
import java.util.Scanner; import java.util.Locale; class LuasBelahKetupat { public static void main(String args[]){ Scanner input = new Scanner(System.in).useLocale(Locale.US); System.out.println("## Program Java - Luas Belah Ketupat ##"); System.out.println("========================================="); System.out.println(); double diagonal1, diagonal2; System.out.print("Input panjang diagonal 1: "); diagonal1 = input.nextDouble(); System.out.print("Input panjang diagonal 2: "); diagonal2 = input.nextDouble(); System.out.println("Luas belah ketupat = " +Math.round(0.5 * diagonal1 * diagonal2 *100)/100.0); } }
Setelah menerima semua inputan, di akhir baris 18 perhitungan luas 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 belah ketupat di tempat lain.
Kode Program Bahasa Java Menghitung Luas Belah Ketupat (Function)
Untuk soal bonus, yakni membuat kode program menghitung luas belah ketupat dalam bentuk function, bisa menggunakan kode berikut:
import java.util.Scanner; import java.util.Locale; class LuasBelahKetupat { static double hitungLuasBelahKetupat(double d1, double d2) { double luas = 0.5 * d1 * d2; return Math.round(luas*100)/100.0 ; } public static void main(String args[]){ Scanner input = new Scanner(System.in).useLocale(Locale.US); System.out.println("## Program Java - Luas Belah Ketupat ##"); System.out.println("========================================="); System.out.println(); double diagonal1, diagonal2; System.out.print("Input panjang diagonal 1: "); diagonal1 = input.nextDouble(); System.out.print("Input panjang diagonal 2: "); diagonal2 = input.nextDouble(); System.out.println("Luas belah ketupat = " +hitungLuasBelahKetupat(diagonal1,diagonal2)); } }
Di awal kode program pada baris 6-9, saya mendefinisikan fungsi atau lebih tepatnya static method hitungLuasBelahKetupat(). Fungsi ini menerima 2 argument yang disimpan ke dalam parameter d1, dan d2.
Fungsi hitungLuasBelahKetupat() berisi 2 perintah: untuk mencari luas belah ketupat dengan perintah luas = 0.5 * d1 * d2, serta proses pembulatan variabel luas dengan method Math.round().
Proses pemanggilan fungsi dilakukan dari dalam perintah System.out.println() di baris 26-27. Nilai variabel diagonal1, dan diagonal2 yang diinput oleh user, dilewatkan sebagai parameter menjadi hitungLuasBelahKetupat(diagonal1, diagonal2).
Demikian kode program menghitung luas belah ketupat menggunakan bahasa pemrograman Java. Semoga tutorial ini bisa bermanfaat.