Contoh Program Java
Contoh Program Java
import javax.swing.*;
public class LuasKubus {
public static void main(String[] args) {
System.out.println("Program untuk perhitungan kubus :");
String sisi = "";
sisi = JOptionPane.showInputDialog("Masukkan panjang sisinya :
");
int s=Integer.parseInt(sisi);
System.out.println ("Panjang sisinya = "+(s));
System.out.println ("Kelilingnya = "+(12*s));
System.out.println ("Luas permukaannya = "+((s*s)*6));
System.out.println ("Volumenya = "+(s*s*s));
}
}
Java-Object-Oriented : Program
Menghitung Volume dan Luas
Permukaan Kubus
Ini adalah contoh program sederhana untuk menghitung luas permukaan dan volume dari
sebuah kubus, menggunakan paradigma berorientasi objek, dimana sebuah objek bernama
kubus terlebih dahulu akan dibuat dan di dalam objek kubus tersebut
terdapatvariables dan methods yang berguna untuk melakukan perhitungan volume dan
sebagainya. Kemudian pada main method, hanya dilakukan pemanggilan metode-metode.
import java.lang.Math;
class kubus {
private int sisi, volume, luasPermukaan;
public void setSisi(int s)
{
sisi = s;
}
public void setVolume(){
volume = (int) Math.pow(sisi, 3);
}
public void setLuasPermukaan() {
luasPermukaan = (int) Math.pow(sisi,2) *6;
}
public int getSisi(){
return sisi;
}
public int getVolume(){
return volume;
}
public int getLuasPermukaan(){
return luasPermukaan;
}
}
class kubusTestDrive {
public static void main(String[] kubus) {
kubus K = new kubus();
System.out.println("Bangun Kubus");
K.setSisi(5);
K.setVolume();
K.setLuasPermukaan();
System.out.println("Panjang sisi kubus = "+ K.getSisi());
System.out.println("Volume kubus = "+K.getVolume());
System.out.println("Luas permukaan kubus =
"+ K.getLuasPermukaan());
}
}
System.out.println("========================================");System.out.printl
n("");
System.out.print("Masukkan Sisi Kubus = ");
sisi=eva.readLine();
s1=Double.parseDouble(sisi);
System.out.println("");
System.out.println("========================================");
//RUMUZZ
volum=Math.pow(s1,3);
luas=6*(s1*s1); //luas permukaan kubus
d1=s1*Math.sqrt(2); // diagonal sisi
diagonal=s1*Math.sqrt(3); // diagonal ruang
System.out.println("Volume Kubus = "+volum);
System.out.println("");
System.out.println("Luas Permukaan Kubus = "+luas);
System.out.println("");
System.out.println("Diagonal Sisi Kubus = "+d1);
System.out.println("");
System.out.println("Diagonal Ruang Kubus = "+diagonal);
System.out.println("");
}
}
System.out.print(a.kubus(s));
System.out.print("\n");
untuk penjelasannya:
Program di atas menggunakan class yang bernama ngitung dan di dalamnya terdapat function
Function balok yang memiliki elemen(anggota) p,l,t yang semuanya bertipe int dan kubus yang
anggotanya s dan bertipe int,dan masing-masing memiliki nilai balik yang merupakan rumus untuk
menghitung volume kubus dan luas balok.
Pada fungsi main dideklarasikan terlebih dahulu variabel yang akan digunakan beserta dengan
tipe datanya
pada class di atas diberikan operator untuk memasukkan datanya yaitu p,l,t,dan s
Dalam posting pertama blog ini saya akan memposting sebuah soal perhitungan sederhana dalam java
menggunakan netbeans. Langsung saja kita ke soalnya sebagai berikut :
1. Buat class Prisma yang mempunyai method menghitung volume prisma void
VolumePrisma(double alas){..} Rumus volume prisma segitiga = (luas alas * tinggi)
atau ((alas*tinggi alas)/2*tinggi)
2. Buat class PrismaBeraksi, yang menampilkan hasil perhitungan volume prisma dalam dua
bentuk : pecahan dan bulat (type-casting).
Dari soal diatas dapat kita ketahui terdapat dua class java, class pertama bertindak sebagai penyedia
rumus yang terdapat didalam method. Kemudian di class selanjutnya, yaitu class prisma beraksi
bertindak sebagai pengeksekusi class prisma. Untuk lebih jelasnya kita langsung saja kerjakan scribnya :
1. Pertama kita ketikkan script berikut kedalam class Prisma :
Dalam hal ini class yang bisa dijalankan hanya class PrismaBeraksi, ini dikarenakan hanya class
PrismaBeraksi saja yang mempunyai script yang digunakan untuk menjalankan yaitu :
public static void main(String[]args){
Apabila class PrismaBeraksi dijalankan / di run maka hasil yang akan ditampilkan adalah sebagai
berikut :
SEGITIGA
LUAS
Bukalah Netbeans anda, Kemudian pilih File > new project > java application > beri nama
pada project name, contohnya dengan nama Matematika.
Kemudian klik kanan pada nama project > new > Java Class, untuk membuat class baru
dan beri nama class LuasSegitiga . Seperti ini
import java.util.Scanner;
public class LuasSegitiga {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("Masukkan nilai alasnya: ");
int alas = input.nextInt();
}
}
}
}
Ingat tutorial kita Membuat Aplikasi bangun datar. Nah bagaimana caranya kalau pada
aplikasi itu kita juga ingin membuat menu untuk bangun ruang dan matematika dasar. Nah
sekarang kita buat menu untuk aplikasi matematika yang lebih lengkap, dengan struktur
menu.
Pada saat project pertama kali dibuat ada 3 file penting yang langsung dibuat, yaitu
main.xml
string.xml
ListBertingkat.java
2. Untuk List Menu ini kita tidak perlu melakukan perubahan pada file main.xml.
3. Sekarang mari kita buat otak dari aplikasi ini, buka ListBertingkat.java, lalu ketikkan
seperti kode dibawah ini
package com.agus.list.tingkat;
/**
* Class ListBertingkat
* @version 1.0 Apr 22, 2011
* @author Agus Haryanto ([email protected])
* @website http://agusharyanto.net
*/
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class ListBertingkat extends ListActivity {
// Create an array of Strings, that will be put to our ListActivity
String[] menuutama = new String[] { "Perhitungan", "Bangun Datar",
"Bangun Ruang", "Keluar Aplikasi" };
String[] bangundatar = new String[] { "Persegipanjang",
"Bujursangkar",
"Segitiga", "Lingkaran", "Menu Utama" };
String[] bangunruang = new String[] { "Kubus", "Balok", "Tabung",
"Limas",
"Menu Utama" };
String[] perhitungan = new String[] { "Penambahan", "Pengurangan",
"Perkalian", "Pembagian", "Menu Utama" };
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
// Create an ArrayAdapter, that will actually make the Strings
above
pada array
menuutama));
}
@Override
/**method ini akan mengoveride method onListItemClick yang ada pada
class List Activity
* method ini akan dipanggil apabilai ada salah satu item dari list
menu yang dipilih
*/
protected void onListItemClick(ListView l, View v, int position, long
id) {
super.onListItemClick(l, v, position, id);
// Get the item that was clicked
// Menangkap nilai text yang dklik
Object o = this.getListAdapter().getItem(position);
String pilihan = o.toString();
list atau
perhitungan));
bangundatar));
bangunruang));
menuutama));
<application android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".ListBertingkat"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
</manifest>
5. Semua telah selesai dibuat sekarang saatnya untuk menjalankan programnya.
Tampilan yang pertamakali muncul adalah menu yang terdapat pada array menuutama
Klik atau sentuh menu Perhitungan, akan tampil menu perhitungan (list menu berasal dari
array perhitungan)
Pada menu ini ada pilihan Menu Utama yang fungsinya untuk kembali ke Menu Utama.
Repot jugakan kalau sudah masuk ke Sub Menu tapi tidak bisa kembali ke Menu Utama.
Silahkan Klik dan Sentuh Menu-menu lainnya rasakan dan pahami perbedannya.
Gimana setelah membaca tutorial ini, mudahkan membuat Menu List Bertingkat.
aplikasi yang dibuat dengan mengunakan java dapat dijalankan di berbagai OS yang
didalamnya sudah terdapat Java Virtual Machine (JVM). Bahasa kerennya Write Once
Run Any WhereMendukung pemrograman berorientasi object (Fully support OOP)
Banyak contoh program atau pun library yang siap pakai dan dapat digabungkan
dengan program yang kita buat
Gratis / Free
Sekarang mari kita perhatkan, burung itu punya nama, mata, kaki, sayap, warna, jenis.
Burung juga dapat terbang, berkicau dan berjalan. Mata, kaki sayap dan warna dalam dunia
class adalah cetakan, template, prototype dari object, sedangkan object adalah instance dari
kelas. Satu kelas dapat mempunyai object lebih dari satu atau banyak.
Bingung yah, nggak usah bingung. Ibaratkan saja class itu adalah cetakan kue dan object itu
adalah kue dari cetakan tersebut.
01
02
03
04
05
06
07
//method terbang
08
09
this.sayap = "mengepak";
10
11
12
//method tidur
13
14
this.sayap = "diam";
15
16
17
Attribute adalah Berbagai variable yang mengitari class, dengan nilai datanya bisa
ditentukan di object. nama, warna, sayap, dan jenis adalah atribute dari class Burung
Method ethod adalah implementasi dari bagaimana bekerjanya sebuah class. terbang
dan tidur adalah method atau behaviour dari class Burung
Untuk membuat object baru dari class Burung tersebut kita harus menginstantiate class
Burung. Untuk menginstantiate sebuah class gunakan keyword
new
01
02
03
04
05
06
07
08
burungnuri.warna = "Merah";
System.out.println("Burung "+burungnuri.nama+" warnanya
"+burungnuri.warna);
//memangil method terbang object burungnuri
09
burungnuri.terbang();
10
System.out.println("Sayapnya "+burungnuri.sayap);
11
burungnuri.tidur();
12
System.out.println("Sayapnya "+burungnuri.sayap);
13
System.out.println("");
14
15
16
17
18
19
20
burungmerpati.terbang();
21
System.out.println("Sayapnya "+burungmerpati.sayap);
22
burungmerpati.tidur();
23
System.out.println("Sayapnya "+burungmerpati.sayap);
24
25
26
Inheritance
Object Oriented Program memiliki beberapa karakteristik, yang akan kita bahas disini adalah
inheritance atau pewarisan.
inheritance adalah pewarisan yang artinya sebuah class dapat mewarisi atribut dan metho
dari class lain, sebagai contoh dalam dunia nyata adalah Class Burung menurunkan sifat dan
kemampuannya kepada class Bebek. Class Burung sebagai superclass dan mewariskan
atribut juga methodnya kepada class Bebek sebagai subclass. Berikut ini gambarannya.
2
3
String kaki;
4
5
8
9
Untuk membuktikannya mari bahwa class bebek mewarisi attribut dan method class burung
kita buat class BebekBeraksi
01
02
03
04
05
06
bebekku.warna = "Coklat";
07
08
09
10
11
12
13
Tidur classnya bebek kok hasilnya burung itu karena yang dipanggil adalah method tidur
yang diwarisi dari class burung.
Untuk memperbaikinya kita bisa mengoveride method tidur tersebut. Tambahkan method
tidur pada class Bebek, sehingga bentuk programnya menjadi seperti ini.
01
02
03
String kaki;
04
05
06
07
08
09
10
11
12
13
Sudah tidak ada kalimat yang janggal dan terbukti bahwa method di superclass dapat
dioveride oleh subclassnya.
Sekian dulu yah, Semoga makin tertarik dengan java
Agus Haryanto
Penyempurnaan Aplikasi
Menghitung Luas
Pesegipanjang
Jumpa lagi dengan Agus Haryanto dalam seri tutorial pemrogarama web HTML dan
Javascript. Pada tutorial sebelumnya, dengan html dan javascript kita telah
membuat Aplikasi Hitung Luas Persegi Panjang, tetapi masih banyak kekurangannya,
kalau kita perhatikan kekurangannya adalah
-
Belum ada validasi inputan, harusnya pada panjang dan lebar kita tidak boleh
menginputkan selain angka
Pada saat kita klik Tombol hitung luas harusnya ada warning apabila ada isian panjang
atau lebar yang belum diisi.
Kotak tempat menampilkan hasil perhitungan masih bisa diedit, harusnya tidak bisa
diedit
Kita sudah mengetahui kekurangannya, sekarang mari kita mulai mensolusikannya. Untuk
itu rubah buka kembali file persegipanjang.htmlkemudian isi dengan kode berikut
01
<html>
02
03
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso8859-1">
04
05
<style>
06
07
08
09
</style>
10
<script type="text/javascript">
11
function hitungLuas(){
12
panjang = document.getElementById("txtPanjang").value;
13
lebar = document.getElementById("txtLebar").value;
14
if (panjang == ""){
15
16
return;
17
18
19
return;
20
21
if (isNaN(panjang)){
22
23
return;
24
}if (isNaN(lebar)){
25
26
return;
27
28
29
document.getElementById("txtLuas").value =
Luas;
30
31
32
function resetForm(){
33
document.getElementById("txtPanjang").value="";
34
document.getElementById("txtLebar").value="";
35
document.getElementById("txtLuas").value="";
36
37
38
</script>
39
</head>
40
<body>
41
<div>
42
43
44
4
5
46
47
48
49
</div>
</body>
</html>
Perhatikan kode diatas untuk mempercantik tampilan pada bagian kode htmlnya kita
menambahkan tag <div> dan <label>
Kita juga mulai bermain dengan css untuk mengatur dan memperindah tampilan
1 <style>
</style>
Pada bagian javascriptnya kita juga sudah menambahkan validasi inputan panjang dan lebar
01
02
if (panjang == ""){
alert("Panjang Harus diisi !");
03
return;
04
05
06
return;
07
08
if (isNaN(panjang)){
09
10
return;
11
12
13
}if (isNaN(lebar)){
alert("Lebar Harus diisi dengan angka !");
return;
14
Nilai pada inputan panjang dan lebar akan dicek apakah sudah diisi atau belum jika belum
diisi maka akan muncul pesan peringatan agar user mengisi nilainya.
Selain itu untuk memastikan bahwa user menginputkan nilai yang benar, maka apabilea
user menginputkan selain angka maka akan muncul juga pesan peringatan bahwa panjang
atau lebar harus diisi dengan angka untuk pengecekannya kita manfaatkan fungsi isNaN
Kita juga menambahakan tombol untuk mereset nilai panjang lebar dan luas. Gunanya jika
kita ingin menghitung lagi kita tidak perlu mengosongkan secara manual.
Sekarang mari kita coba jalankan dibrowser apakah kode yang baru ini telah menutupi
kekurangan-kekurangan pada kode yang lama
Isi nilai panjang atau lebar dengan nilai yang selain angka. Lalu klik tombol Hitung Luas,
karena nilai lebar diisi dengan selain angka maka akan muncul peringatan Lebar Harus diisi
dengan angka
Isi nilai panjang atau lebar dengan angka, Lalu klik tombol Hitung Luas, Tidak ada lagi
peringatan dan Nilai Luas sudah terisi.
Menghitung Luas
Java
Bangun
Dengan
1.
2.
3.
Segitiga
Lingkaran
lingkaran
Keliling
import
java.io.*;
public
class
RumusBangunRuang
{
public
static
BufferedReader
void
dataIn
main(
=
new
String[]
args
BufferedReader(new
throws
IOException
InputStreamReader(
String
int
System.in)
);
input=null;
panjang,lebar,jari,
alas,
double
tinggi;
Luas,LuasLing,keliling;
int
pil;
try{
System.out.println("Menu
Pilihan
System.out.println("1.Menghitung
");
Luas
Segitiga");
System.out.println("2.Menghitung
Luas
Lingkaran");
System.out.println("3.Menghitung
Keliling
Lingkaran");
System.out.print("Masukan
Pilihan
Anda=
");
input=dataIn.readLine();
pil
Integer.parseInt(input);
if(pil==1)
{
System.out.println("");
System.out.println
System.out.print
("LUAS
("Masukan
SEGITIGA");
Alas
");
alas
System.out.print
Integer.parseInt(dataIn.readLine());
("Masukan
tinggi
Tinggi
Integer.parseInt(dataIn.readLine());
Luas
System.out.println("Alas
(alas*tinggi)/2;
adalah
System.out.println("Tinggi
");
adalah
System.out.println("Luas
"
alas);
"
tinggi);
adalah
"+
Luas);
}
else
if(pil==2)
{
System.out.println("");
System.out.println
System.out.print
("LUAS
("Masukan
jari
LINGKARAN");
jari-jari
Integer.parseInt(dataIn.readLine());
LuasLing
System.out.println("jari
");
adalah
System.out.println("Luas
3.14*jari*jari;
"
adalah
jari);
"+
LuasLing);
}
else
if(pil==3)
{
System.out.println("");
System.out.println
System.out.print
("KELILING
("Masukan
jari
jari-jari
System.out.println("Keliling
");
Integer.parseInt(dataIn.readLine());
keliling
System.out.println("jari
LINGKARAN");
=
adalah
2*3.14*jari;
"
adalah
+
"+
jari);
keliling);
}
else
{
System.out.println("Maaf.....,Yang
}
anda
masukan
data
salah!");
}catch(
System.out.println("Error!");
System.exit(1);
}
}
}
NumberFormatException
){