Minggu, 26 Oktober 2014

Tugas program java kedua

Baiklah kali ini saya akan membuat program Java menggunakan SquareEquationToy. Berikut adalah listing programnya:

import javax.swing.*;
public class SquareEquationToy {
  private double a;
  private double b;
  private double c;
  private double x1;
  private double x2;


private boolean fValid = false;
    public SquareEquationToy()
{                    

String input = JOptionPane.showInputDialog("masukan nilai a");
double a = Double.parseDouble(input);
System.out.println("nilai a = " + a);
String Input = JOptionPane.showInputDialog("masukan nilai b");
double b = Double.parseDouble(Input);
System.out.println("nilai b = " + b);
String iNput = JOptionPane.showInputDialog("masukan nilai c");
double c = Double.parseDouble(iNput);
System.out.println("nilai c = " + c);
this.a = a;
this.b = b;
this.c = c;
calcX();
}
  
private double calcDiscriminant(){
return b*b - 4*a*c;
}
  
private void calcX(){
double d = calcDiscriminant();
if (d > 0) {
x1 = (-b + Math.sqrt(d))/(2*a);
x2 = (-b - Math.sqrt(d))/(2*a);
fValid = true;
}
}
               
public boolean isValid(){
return fValid;
}
               
public double getA(){
return a;
}
               
public double getB(){
return b;
}
               
public double getC(){
return c;
}
               
public double getX1(){
return x1;
}
               
public double getX2(){
return x2;
}
               
static void test(){
SquareEquationToy s = new SquareEquationToy ();
if (s.isValid()){
System.out.println("Persamaan "+s.getA()+"X^2 "+s.getB()+"X"+s.getC() + " mempunyai akar "+s.getX1()+"dan"+s.getX2());
}
else {
System.out.println("Persamaan "+s.getA()+"X^2 "+s.getB()+"X"+s.getC() + " Tidak mempunyai akar-akar riil");
}
}
                               
public static void main (String[]args){
test();
System.exit(0);
}
}

Mudah bukan program tersebut?jika program tidak berjalan dengan baik,coba anda koreksi besar atau kecilnya huruf yang anda gunakan,karena program ini sangat sensitif.

SELAMAT MENCOBA ^.^

Sabtu, 18 Oktober 2014

Contoh Program Java


hai gaes....
kali ini saya akan melanjutkan artikel sebelumnya,jika sebelumnya saya sudah menjelaskan tentang apa itu java, nah pada saaat ini saya akan membuat programnya. Baiklah langsung kita buat programnya:

1. Langkah pertama penulisan program dengan menggunakan aplikasi notepad/notepad++
2. Kemudian ketik seperti berikut pada lembar kerja notepad/ notepad++:

/**
* MathExploreToy.java

* Created on June,3, 2003, 7:17PM, 2014, 18.31

*/



public class MathExploreToy {

/** Creates a new instance of MathExploreToy */

public MathExploreToy() {

}

static void test() {
  
testE();
  
testPI();
  
testAbs();

}


static void bettertest(){
  
testIntAbs();

}


static void testE() {
  
System.out.println("Testing untuk Math.E");
  
System.out.println("Math.E = "+Math.E);
  
System.out.println(" ");

}



static void testPI() {
  
System.out.println("Testing untuk Math.PI");
  
System.out.println("Math.PI = "+Math.PI);
  
System.out.println(" ");

}



static void testAbs(){
  
System.out.println("Testing untuk Math.Abs() ");
  
System.out.println("Math.abs(-23.7) = "+Math.abs(-23.7));
  
System.out.println("Math.abs(0.0) = "+Math.abs(0.0));
  
System.out.println("Math.abs(23.7) = "+Math.abs(23.7));
  
System.out.println("Double.MIN_VALUE = "+Double.MIN_VALUE*(-1));
  
System.out.println("Math.abs(Double.MIN_VALUE) = "+Math.abs(Double.MIN_VALUE));
  
System.out.println("Math.abs(-Double.MIN_VALUE) = "+Math.abs(-Double.MIN_VALUE));
  
System.out.println("Double.MAX_VALUE = "+Double.MAX_VALUE);
  
System.out.println("Math.abs(Double.MAX_VALUE) = "+Math.abs(Double.MAX_VALUE));
  
System.out.println("Math.abs(-Double.MAX_VALUE) = "+Math.abs(-Double.MAX_VALUE));
  
System.out.println(" ");

}



static void testIntAbs(){
  
System.out.println("Cara pengujian yang lebih baik mendukung otomatisasi!");
  
System.out.println("Testing untuk Math.abs() bagi bilangan bulat");
  
if (Math.abs(-23) != 23)
    System.out.println("Math(-23) :: Error! Hasil harus 23");
  
else System.out.println("Math(-23) :: Correct!");
  
  
if (Math.abs(0) != 0) System.out.println("Math(0) :: Error! hasil harus 0");
  
else System.out.println("Math(0) :: Correct");
  
  
if (Math.abs(23) != 23) System.out.println("Math(23) :: Error! Hasil harus 23");
  
else System.out.println("Math(23) :: Correct!");
  
  

System.out.println("Integer.MIN_VALUE = "+Integer.MIN_VALUE);
  
System.out.println("Math.abs(Integer.MIN_VALUE) = "+Math.abs(Integer.MIN_VALUE));
  
System.out.println("Integer.MAX_VALUE = "+Integer.MAX_VALUE);
  
System.out.println("Math.abs(Integer.MAX_VALUE) = "+Math.abs(Integer.MAX_VALUE));
  
  
if (Math.abs(Integer.MIN_VALUE) != (-Integer.MIN_VALUE))
    System.out.println("Math(Integer.MIN_VALUE) :: Error! ");
  
else System.out.println("Math(Integer.MIN_VALUE) :: Correct!");
  
  
if (Math.abs(Integer.MIN_VALUE) < 0)
    System.out.println("Math(Integer.MIN_VALUE) :: Error! Harus > 0");
  
else System.out.println("Math(Integer.MIN_VALUE) :: Correct!");
  
  
if (Math.abs(Integer.MAX_VALUE) != Integer.MAX_VALUE)
    System.out.println("Math(Integer.MAX_VALUE) :: Error! ");
  
else System.out.println("Math(Integer.MAX_VALUE) :: Correct!");
  
  
System.out.println("\n\nPerhatian!");
  
System.out.println(
"Pengujian menunjukkan hasil yang tidak sesuai dengan matematika!!!\n"+
"Pada kondisi batas sangat sulit diprediksi, untuk itu kita harus mengacu dokumentasi bahasa\n"+
"Pengujian otomatis kadang tidak dapat menemukannya secara benar karena dibatasi juga\n"+
"oleh kemampuan bahasa itu sendiri bila kesalahan adalah pada spesifikasi bahasa itu sendiri!\n"+
"Pengujian otomatis akan benar ditangan yang ahli, pengujian dapat ditambah sbb:\n"+
"Berdasarkan kenyataan bahwa hasil fungsi abs tidak boleh kurang dari nol");
  

System.out.println(
"\n"+
"Di Java, Math.abs(Integer.MIN_VALUE) justru menghasilkan bilangan negatif/ \n"+
"Melanggar rumus matematika dimana hasil fungsi absolut selalu bernilai positif.\n"+
"Hasil ini dapat ditelusuri karena representasi int adalah two's complement\n"+
"Versi yang dipakai penulis :: JDK 1.8");

}



static void testAcos(){
  
System.out.println("Math.acos(0.9) = "+Math.acos(0.9));
  }


static void testCeil(){

}


static void testCos(){

}


static void testExp(){

}


static void testFloor(){

}


static void testLog(){

}


static void testMax(){

}


static void testMin(){

}


static void testPow(){

}


static void testSin(){

}


static void testSqrt(){

}


static void testTan(){

}


public static void main (String[] args){

test();
  
bettertest();

}

}




3. Lalu kita save
4. Kemudian kita kompilasi program JAVA tersebut dengan command prompt.
5. Dan anda harus menyertakan path lokasi javac,jika lingkungan path belum di ubah, maka program javac merupakan compiler, untuk melakukan kompilasi program.
6. Jika anda tidak mengerti, anda dapat melihat hasil kompilasi javac dengan melihat isi direktori program tersebut.
7. Lalu untuk menjalankan program hasil kompilasi program ini, anda dapat menjalankan class melalui java interpreter.
8. Dan ini adalah hasil outputnya:




Nah sekian dulu yahh.. semoga bermanfaat^.^

Sabtu, 11 Oktober 2014

JAVA


Java adalah sebuah teknologi yang diciptakan oleh James Gosling dan diperkenalkan oleh Sun Microsystems inc  pada akhir tahun 1995. Bahasa ini banyak menggunakan bahasa C dan C++. Karena fungsionalitasnya yang memungkinkan aplikasi java ini mampu berjalan di beberapa platform sistem operasi yang berbeda, java sangat dikenal dengan slogannya yaitu,
"Tulis sekali, jalankan dimana pun"
Sampai saat ini java merupakan bahasa pemrograman yang paling populer dan secara luas digunakankan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
Versi awal Java ditahun 1996 merupakan versi release sehingga dinamakan JavaVersi 1.0. Java versi ini menyajikan banyak paket standar awal yang masih terus dikembangkan pada versi selanjutnya:
• java.lang : Diperuntukan kelas elemen-elemen dasar.
• java.io: Diperuntukan kelas input dan output, termasuk penggunaan berkas.
• java.util: Diperuntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
• java.net : Diperuntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengankomputer lain menggunakan jaringan TCP/IP.
• java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
• java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.


Kelebihan

Multiplatform. Kelebihan dari Java ialah dapat dioperasikan di beberapa platform/sistem operasi komputer, sesuai dengan prinsipnya -tulis sekali, jalankan dimana pun-. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi(diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekalipun hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini dapat memungkinkan jika sebuah program berbasis java dikerjakan dengan operating system Linux, tetapi harus dengan baik pengoperasiannya di atas Microsoft Windows. Platform yang didukung hingga saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri(yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
OOP (Object Oriented Programming)
Perpustakaan Kelas Yang Lengkap, Java sangat populer dengan kelengkapan perpustakaan/library (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para programer untuk membuat aplikasi yang dibuat. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melengkupi seluruh kebutuhan pembuat aplikasi.
•Bergaya C++, Java memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak programer dari C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak,sebagian besar adalah programer dari C++ yang pindah ke Java. Universitas-universitas diAmerika Serikat juga mulai berpindah dengan mengajarkan Java kepada para mahasiswanya yang baru karena lebih mudah dipahami oleh mahasiswa dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
•Pengumpulan sampah otomatis, Java memiliki fasilitas pengaturan memori sehingga para programer tidak perlu melakukan pengaturan memori secara langsung(seperti halnya dalam bahasa C++ yang dipakai secara luas).


Kekurangan

•"Tulis sekali, jalankan dimana pun" Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai saat ini tidak berfungsi pada Mac OS X.
Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode yang sudah jadi ke kode awal. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti tipe data, nama-nama kelas, dan metode. Hal yang sering juga terjadi pada Microsoft .NET Platform. Dengan demikian,algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ danPascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

Referensi dari buku "Belajar Pemrograman dengan Bahasa Pemrograman C++ dan Java" yang diterbitkan oleh INFORMATIKA