Vous êtes sur la page 1sur 6

Created by MELJUN CORTES

CALCULATOR.java
import java.awt.*; import java.awt.event.*; public class Calculator extends Frame implements ActionListener { private Button keysArray[]; private Panel keyPad; private TextField lcdField; private double result; private boolean first; private boolean foundKey; static boolean clearText; private int prevOperator; public Calculator() { lcdField = new TextField(20); keyPad = new Panel(); keysArray = new Button[16]; result = 0.0; prevOperator = 0;

first = true; clearText = true; //Set frame layout manager setLayout (new BorderLayout()); lcdField.setEditable(false); //Create buttons for (int i = 0; i<= 9; i++) keysArray[i] = new Button(String.valueOf(i)); keysArray[10] = new Button("/"); keysArray[11] = new Button("*"); keysArray[12] = new Button("-"); keysArray[13] = new Button("+"); keysArray[14] = new Button("="); keysArray[15] = new Button("."); //Set panel layout manager keyPad.setLayout(new GridLayout(4,4)); //Add buttons to keyPad panel for (int i = 7; i <= 10; i++) //adds buttons 7,8,9, and divide to Panel keyPad.add(keysArray[i]); for (int i = 4; i <= 6; i++) //adds buttons 4,5, and 6 to Panel keyPad.add(keysArray[i]); for (int i = 1; i <= 3; i++) //adds buttons 1,2, and 3 to Panel keyPad.add(keysArray[i]); keyPad.add(keysArray[12]); //adds subtract button to Panel keyPad.add(keysArray[0]); //adds 0 key to Panel for (int i = 15; i >=13; i--) keyPad.add(keysArray[i]); //adds decimal point,equal, and addition keys to Panel add(lcdField, BorderLayout.NORTH); //adds text field to top add(keyPad, BorderLayout.CENTER); //adds Panel to center for (int i = 0; i < keysArray.length; i++) keysArray[i].addActionListener(this); addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) {

System.exit(0); } } ); } public void actionPerformed(ActionEvent e) { foundKey = false; //Search for the key pressed for (int i = 0; i < keysArray.length && !foundKey; i++) if(e.getSource() == keysArray[i]) //key match found { foundKey = true; switch(i) { case 0: case 1: case 2: case 3: case 4: //number buttons case 5: case 6: case 7: case 8: case 9: //0-9 case 15: //decimal point button if(clearText) { lcdField.setText(""); clearText = false; } lcdField.setText(lcdField.getText() + keysArray[i].getLabel()); break; case 10: //divide button case 11: //multiply button case 12: //minus button case 13: //plus button case 14: //equal button clearText = true; if (first) //first operand { if (lcdField.getText().length()==0) result = 0.0; else result = Double.valueOf(lcdField.getText()).doubleValue(); first = false; prevOperator = i; //save previous operator } else //second operand enetered, so calculate total {

switch(prevOperator) { case 10: //divide button result /= Double.valueOf(lcdField.getText()).doubleValue(); case 11: //multiply button result *= Double.valueOf(lcdField.getText()).doubleValue(); case 12: //minus button result -= Double.valueOf(lcdField.getText()).doubleValue(); case 13: //plus button result += Double.valueOf(lcdField.getText()).doubleValue(); break; } lcdField.setText(Double.toString(result)); if(i==14) //equal button first = true; else prevOperator = i; //save previous operator } break; } } } public static void main(String args[]) { //Create a new instance of the Calculator object Calculator calcFrame = new Calculator(); //Set frame attributes calcFrame.setBounds(100,100,235,228); calcFrame.setTitle("Calculator"); calcFrame.setVisible(true); } }

Payment Tuition Calculation.java


import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class PaymentApplet extends Applet implements ItemListener { Mode Panel1; Tuition Panel2; public void init() { setLayout (new GridLayout(1, 2)); Panel1 = new Mode(); Panel2 = new Tuition(); add(Panel1); Panel1.chkCash.addItemListener (this); Panel1.chkTwoPayment.addItemListener (this); Panel1.chkThreePayment.addItemListener (this); add(Panel2); } public void itemStateChanged(ItemEvent objEvent) { int varTuition = 0; double varAmount, varTFee, varAF; if (objEvent.getItemSelectable()==Panel1.chkCash){ varAF = Double.parseDouble(Panel2.txtTuition.getText());

varAmount = varTuition; varTFee = varAF - (varAF * 0.10); Panel2.txtTFee.setText(String.valueOf(varTFee)); } else if (objEvent.getItemSelectable()==Panel1.chkTwoPayment) { varAF = Double.parseDouble (Panel2.txtTuition.getText()); varAmount = varTuition; varTFee = varAF + (varAF * 0.05); Panel2.txtTFee.setText(String.valueOf(varTFee)); } else if (objEvent.getItemSelectable()==Panel1.chkThreePayment) { varAF = Double.parseDouble(Panel2.txtTuition.getText()); varAmount = varTuition; varTFee = varAF + (varAF * 0.10); Panel2.txtTFee.setText(String.valueOf(varTFee)); } } } class Mode extends Panel { CheckboxGroup CGroup; Checkbox chkCash, chkTwoPayment,chkThreePayment; Label lblMode; Mode () { lblMode = new Label ("--Mode of Payment:--"); add(lblMode); CGroup = new CheckboxGroup(); add(chkCash = new Checkbox("Cash (10% discount)", CGroup, false)); add(chkTwoPayment = new Checkbox("Two Payments (5% interest)", CGroup, false)); add(chkThreePayment = new Checkbox("Three Payments (10% interest)", CGroup, false)); } } class Tuition extends Panel { Label lblFee, lblTFee; TextField txtTuition, txtTFee; Tuition() { lblFee = new Label("Enter tuition fee: "); add(lblFee); txtTuition = new TextField(7); add(txtTuition); lblTFee = new Label("Your total tuition fee: "); add(lblTFee); txtTFee = new TextField(7); add(txtTFee); } }