Program ini akan diulang jika kita memasukkan suatu string yang karakter/huruf pertamanya y atau Y. Selain itu maka program akan berhenti. Untuk menerapkan pengulangan tersebut, Saya mencoba dengan membuat program menghitung luas dan keliling lingkaran.
Program ini membutuhkan berkas BacaKeyboard.class untuk menginput data bertipe string. Source code BacaKeyboard ini Saya peroleh dari buku Abdul Kadir mengenai Dasar Pemrograman Java 2.
Kemudian data bertipe string itu di konvert menjadi double, agar bisa dilakukan perhitungan matematis. Jika input data dari keyboard bukan berupa angka, maka program akan memberi tahu kepada Anda dan menanyakan apakah Anda akan melakukan input data ulang.
Untuk bisa menjalankan program ini, Anda harus mengompilasi 2 file berekstensi java berikut :
- BacaKeyboard.java
- HitungLingkaran.java
javac BacaKeyboard.java
javac HitungLingkaran.java
Selanjutnya akan terbentuk 2 file berekstensi class :
- BacaKeyboard.class
- HitungLingkaran.class
java HitungLingkaran
Ini adalah source code dari program tersebut :
- File BacaKeyboard.java
import java.io.*;
public class BacaKeyboard {
public static String bacaString() {
int karakter;
String string = "";
boolean selesai = false;
while(!selesai) {
try {
karakter = System.in.read();
if(karakter < 0 || (char)karakter == '\n')
selesai = true;
else
if(karakter != '\r')
string = string + (char)karakter;
}catch(IOException ioe) {
System.err.println("Ada kesalahan input data!");
selesai = true;
}
}
return string;
}
}//Akhir File BacaKeyboard.java
- File HitungLingkaran.java
//Berkas ini membutuhkan berkas lainnya yaitu BacaKeyboard.class pada direktori kerja
//Author : Tri Sapto Adji, S.Pd.
public class HitungLingkaran {
public static void main(String[] args) {
char lagi = 'y';
System.out.println("");
System.out.println("PROGRAM MENGHITUNG LUAS DAN KELILING LINGKARAN");
System.out.println("==============================================");
System.out.println("");
System.out.println(" ----------------------------------");
System.out.println(" | author : Tri Sapto Adji, S.Pd. |");
System.out.println(" | @Manokwari, Papua Barat |");
System.out.println(" ----------------------------------");
while(lagi == 'y') {
System.out.print("\nMasukkan nilai jari-jari lingkaran : ");
try{
String st = BacaKeyboard.bacaString();
double jari2 = Double.valueOf(st).doubleValue();
double keliling = 2 * Math.PI * jari2;
double luas = Math.PI * Math.pow(jari2,2);
System.out.println("\nKeliling lingkaran = " + keliling);
System.out.println("Luas lingkaran = " + luas + '\n');
}catch(NumberFormatException nfe) {
System.err.println("\nOoops ... Ada kesalahan input data");
System.err.println("Nilai jari-jari harus berupa angka ..!\n");
}
System.out.print("Mau coba lagi (y/t)? ");
String str = BacaKeyboard.bacaString();
lagi = str.charAt(0);
if(lagi == 'Y') lagi = 'y';
if(lagi == 'y') continue;
else {
System.out.println("Trim\'s ..\n");
break;
}
}
}
}//Akhir berkas HitungLingkaran.java
Indahnya berbagi ... :)
Tidak ada komentar:
Posting Komentar