Latihan Kode Program Java: Menghitung Keliling Segitiga

Latihan kode program bahasa Java kali ini akan membahas cara menghitung keliling segitiga. Materi ini berhubungan dengan logika matematika dan penggunaan operator aritmatika.


Soal Menghitung Keliling Segitiga

Buatlah kode program dalam bahasa Java untuk menghitung keliling segitiga. Kode program butuh 2 input berupa nilai alas dan tinggi segitiga, kemudian menampilkan output keliling segitiga. Agar lebih sederhana, segitiga ini dianggap segitiga siku-siku.

Bonus soal: buat juga dalam bentuk function.

Berikut contoh tampilan akhir yang diinginkan (1):

## Program Java Menghitung Keliling Segitiga ##
===============================================

Input alas segitiga: 8
Input tinggi segitiga: 12

Panjang sisi miring: 14.42
Keliling segitiga: 34.42

Berikut contoh tampilan akhir yang diinginkan (2):

## Program Java Menghitung Keliling Segitiga ##
===============================================

Input alas segitiga: 7.25
Input tinggi segitiga: 9.75

Panjang sisi miring: 12.15
Keliling segitiga: 29.15

Silahkan coba sebentar membuat kode program ini.


Tips Membuat Kode Program Menghitung Keliling Segitiga

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

Dikutip dari wikipedia, segitiga adalah poligon dengan tiga ujung dan tiga simpul. Ini adalah salah satu bentuk dasar dalam geometri.

Rumus keliling segitiga didapat dari penambahan semua sisinya. Misalkan titik sudut segitiga ada di A, B dan C. Maka kelilingnya adalah total dari AB+BC+CA.

Agar perhitungan keliling sisi segitiga lebih sederhana, kita akan ambil batasan bentuk segitiga siku-siku. Dengan demikian, sisi miring segitiga bisa dihitung menggunakan rumus pitagoras, yakni √(alas2+tinggi2).


Kode Program Java Menghitung Keliling Segitiga

Berikut salah satu solusi dari soal menghitung keliling segitiga menggunakan bahasa pemrograman Java:

import java.util.Scanner;
import java.util.Locale;
 
class KelilingSegitiga {
    public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("## Program Java Menghitung Keliling Segitiga ##");
    System.out.println("===============================================");
    System.out.println();
     
    double alas, tinggi, sisi_miring, keliling;
 
    System.out.print("Input alas segitiga: ");
    alas = input.nextDouble();
     
    System.out.print("Input tinggi segitiga: ");
    tinggi = input.nextDouble();
    System.out.println();
  
    sisi_miring = Math.sqrt((alas*alas) + (tinggi*tinggi));
    keliling = alas + tinggi + sisi_miring;
	
    sisi_miring = Math.round(sisi_miring*100)/100.0;
    keliling = Math.round(keliling*100)/100.0;
  
    System.out.println("Panjang sisi miring: "+sisi_miring);
    System.out.println("Keliling segitiga: "+keliling);
 
    input.close();
  }
}

Latihan Kode Program Java - Menghitung Keliling Segitiga

Agar bisa berjalan, save kode program diatas ke dalam file KelilingSegitiga.java, lalu compile dengan perintah javac KelilingSegitiga.java, dan jalankan (run) dengan perintah java KelilingSegitiga. 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 KelilingSegitiga, 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 alas, tinggi, sisi_miring, dan keliling bertipe double. Disini saya menggunakan tipe data double agar nilai input bisa menampung angka pecahan.

Kemudian user diminta menginput nilai alas dan tinggi segitiga di baris 16 dan 19.

Nilai ini dipakai untuk menghitung sisi miring segitiga dengan rumus pitagoras, yang dalam kode program Java bisa didapat dari perintah Math.sqrt((alas*alas) + (tinggi*tinggi)). Sedangkan untuk keliling segitiga bisa didapat dengan rumus keliling = alas + tinggi + sisi_miring.

Agar tampilan angka pecahan menjadi lebih rapi, di baris 23 hasil variabel sisi_miring dan keliling 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 keliling*100, input ke dalam method Math.round(), lalu baru dibagi lagi dengan angka 100.0.

Dengan cara ini, variabel sisi_miring dan keliling sudah berisi angka pecahan dengan 2 tempat desimal.

Terakhir, nilai variabel sisi_miring dan keliling segitiga ditampilkan di baris 28-29.

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

import java.util.Scanner;
import java.util.Locale;
 
class KelilingSegitiga {
    public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("## Program Java Menghitung Keliling Segitiga ##");
    System.out.println("===============================================");
    System.out.println();
     
    double alas, tinggi;
 
    System.out.print("Input alas segitiga: ");
    alas = input.nextDouble();
     
    System.out.print("Input tinggi segitiga: ");
    tinggi = input.nextDouble();
    System.out.println();
	  
    System.out.println("Keliling segitiga: "+
     Math.round(
       (alas + tinggi + Math.sqrt((alas*alas) + (tinggi*tinggi)))*100)/100.0
    );
 
    input.close();
  }
}

Setelah menerima inputan alas dan tinggi di baris 16-19, di baris 23-24 perhitungan keliling langsung ditulis ke dalam perintah System.out.println().

Penulisan seperti ini memang lebih singkat. Namun kelemahannya kita harus melakukan perhitungan ulang jika butuh nilai keliling segitiga di tempat lain.


Kode Program Java Menghitung Keliling Segitiga (Function)

Untuk soal bonus, yakni membuat kode program menghitung keliling segitiga dalam bentuk function, bisa menggunakan kode berikut:

import java.util.Scanner;
import java.util.Locale;
 
class KelilingSegitiga {
	
  static double hitungKelilingSegitiga(double a, double t) {
    double keliling = a + t + Math.sqrt((a*a) + (t*t));
    return Math.round(keliling*100)/100.0;
  }
 
  public static void main(String args[]){
	  
    Scanner input = new Scanner(System.in).useLocale(Locale.US);
      
    System.out.println("## Program Java Menghitung Keliling Segitiga ##");
    System.out.println("===============================================");
    System.out.println();
     
    double alas, tinggi;
 
    System.out.print("Input alas segitiga: ");
    alas = input.nextDouble();
     
    System.out.print("Input tinggi segitiga: ");
    tinggi = input.nextDouble();
    System.out.println();
  
    System.out.println("Keliling segitiga: "
                       +hitungKelilingSegitiga(alas, tinggi));
 
    input.close();
  }
}

Di awal kode program, tepatnya pada baris 6-9, saya mendefinisikan fungsi hitungKelilingSegitiga(). Fungsi ini menerima 2 argument yang disimpan ke dalam parameter a dan t.

Fungsi hitungKelilingSegitiga() berisi 2 perintah: untuk mencari keliling segitiga serta proses pembulatan variabel keliling dengan method Math.round().

Proses pemanggilan fungsi dilakukan dari dalam perintah System.out.println() di baris 29. Nilai alas dan tinggi segitiga yang diinput oleh user, dilewatkan sebagai parameter menjadi hitungKelilingSegitiga(alas, tinggi).


Demikian kode program menghitung keliling segitiga menggunakan bahasa pemrograman Java. Semoga tutorial ini bisa bermanfaat.

Add Comment