jump to navigation

Kalkulator dengan JAVA 19 Juni 2008

Posted by isaninside in Relax.
trackback

Java KalkulatorPada tanggal 18 Juni 2008 yang lalu saya diwajibkan menyelesaikan sebuah program dengan menggunakan pemrograman JAVA. Oh GOD! what happen??? Jangankan untuk membuat kalkulator, sistematika penulisan program java saja belum terlalu saya mengerti. Aplikasi netbeans yang digunakan terlalu sensitif terhadap kesalahan-kesalahan kecil yang seharusnya bisa dilewatkan.

Tapi pada akhirnya program tersebut clear juga, bagaimana tidakrekan-rekan seperjuangan telah lebih dulu menyelesaikan listing berikut tampilan program yang dimaksudkan. Selain itu Laporan pun telah mereka selesaikan. Oh Thanks GOD…

Akhirnya saya dengan seorang teman senasib, kami mengayunkan roda dan menembus dinginnya malam yang beberapa jam lalu mengalami hujan. Akhirnya kami sampai di rumah saudara Antonio Reinaldo yang merupakan cikal bakal terselesaikannya laporan Tugas akhir untuk tanggal 19 nantinya.

Program yang di dapat dimodifikasi dengan menelaah source dan listing program yang telah ada. Dengan menelaah listing program tersebut akhirnya saya memahami bagian-bagian program tersebut. Terdapat beberapa bagian penting yang dapat mempengaruhi frame, display dan tata letak kalkultor sederhana tersebut. Listing program yang telah saya modifikasi tersebut ternyata berasal dari JENI (Java Education Network Indonesia). Adapun listing program tersebut adalah sebagai berikut.

::: Listing Program Utama :::

Class Kalkulator

package KalkulatorIsan;
import java.awt.*;
import javax.swing.*;
/**
*
* Programmer I-san Z http://www.isaninside.wordpress.com
*/
public class Kalkulator extends JFrame{
private JButton [] buttons;
private JTextField display;
public Kalkulator(String title)
{
super(title);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
addButtons();
addDisplay();
CalculatorListener listener = new CalculatorListener(display);
for (int i = 0; i < buttons.length; i++)
{
buttons[i].addActionListener(listener);
}
}

private void addButtons()
{
JPanel center = new JPanel(new GridLayout(4, 4, 10, 10));
buttons = new JButton[16];
for(int i = 0; i <= 9; i++)
{
buttons[i] = new JButton(“” + i);
}
buttons[10] = new JButton(“/”);
buttons[11] = new JButton(“*”);
buttons[12] = new JButton(“-“);
buttons[13] = new JButton(“+”);
buttons[14] = new JButton(“=”);
buttons[15] = new JButton(“.”);
for(int i = 7; i <= 10; i++)
{
center.add(buttons[i]);
}
for(int i = 4; i <= 6; i++)
{
center.add(buttons[i]);
}
center.add(buttons[11]);
for(int i = 1; i <= 3; i++)
{
center.add(buttons[i]);
}
center.add(buttons[12]);
center.add(buttons[0]);
center.add(buttons[15]);
center.add(buttons[14]);
center.add(buttons[13]);
this.getContentPane().add(center, BorderLayout.CENTER);
}

private void addDisplay()
{
JPanel north = new JPanel(new BorderLayout());
display = new JTextField();
display.setEditable(false);
display.setBackground(Color.WHITE);
display.setText(“15411”);
north.add(display, BorderLayout.CENTER);
this.getContentPane().add(north, BorderLayout.SOUTH);
}
public static void main(String [] args)
{
Kalkulator calc = new Kalkulator(“Kalkulator Ihsan Z 2005 65533”);
calc.setSize(350,330);
calc.setResizable(false);
calc.setVisible(true);
}
}

:::Selanjutnya Dibuat Class CalculatorListener:::

package KalkulatorIsan;
import java.awt.event.*;
import javax.swing.*;
/**
*
* Programmer I-san Z http://www.isaninside.wordpress.com
*/
public class CalculatorListener implements ActionListener{
private JTextField textField;
private String previousValue;
private char operator;
private boolean first;
public CalculatorListener(JTextField tf)
{
textField = tf;
first = true;
}
public void actionPerformed(ActionEvent a)
{
String button = a.getActionCommand();
if(first)
{
textField.setText(“”);
}
if(button.equals(“0”) ||
button.equals(“0”) ||
button.equals(“1”) ||
button.equals(“2”) ||
button.equals(“3”) ||
button.equals(“4”) ||
button.equals(“5”) ||
button.equals(“6”) ||
button.equals(“7”) ||
button.equals(“8”) ||
button.equals(“9”) ||
button.equals(“.”))
{
textField.setText(textField.getText() + button);
first = false;
}
else if(button.equals(“/”) ||
button.equals(“*”) ||
button.equals(“-“) ||
button.equals(“+”))
{
operator = button.charAt(0);
previousValue = textField.getText();
first = true;
}
else if(button.equals(“=”))
{
double current = Double.parseDouble(textField.getText());
double previous = Double.parseDouble(previousValue);
double result = 0.0;
switch(operator)
{
case ‘*’ :
result = current * previous;
break;
case ‘/’ :
result = previous / current;
break;
case ‘+’ :
result = current + previous;
break;
case ‘-‘ :
result = previous – current;
}
textField.setText(result + “”);
first = true;
}
}
}

Itulah listing program yang dimodifikasi secara sederhana. Terdapat beberapa poin listing yang dapat dipahami penggunaannya. silahkan perhatikan baik-baik.

IHSAN Z

Komentar»

1. Asep Saepudin - 19 November 2008

Bagus mas…, aku juga baru menyelesaikan exam Jeni1, tinggal Jeni2 nih minggu depan..

Sukses ya!

2. ruslanto - 2 April 2009

makasih atas programnya..

tapi running gak nie??

isaninside - 2 April 2009

To : ruslanto

Pas saya compile dulu jalan kok… hehehe tes dulu aj.. mudah-mudahan running ya..

3. wahyu - 6 Agustus 2009

makasih atas pencerahan’a…

isaninside - 6 Agustus 2009

To : Wahyu

sama-sama, thx sudah berkunjung

4. mufirdaus87 - 23 Desember 2009

Makasie ya mas,, ini saya copas buat di blog saya ya, buat tugas java saya…

5. Membuat Kalkulator Dengan JAVA « - 23 Desember 2009

[…] Sumbernya Disini […]

6. avan - 22 April 2010

thanks broo

7. dion - 11 Mei 2011

mas saya mau tanya…tahap lanjut pembuatan kalkulator yang menggunakan sin cos tan itu logikanya gmn mas???tolong di kirim ya mas sourch code nya ya..ke email aku,thx mas


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: