Java Programs[Important]
- WRITE A JAVA
PROGRAM that works as a simple calculator. Use a grid layout to arrange buttons
for the digits and for the + - x / % operations. Add atext field to display the
result. Program :
 
-  
 
- import   x.swing.*;
 
-  import   .awt.*; 
 
- import   .awt.event.*; 
 
- //<applet code=Calculator
height=300 width=200></applet>
 
-  public class Calculator extends JApplet
 
-  { 
 
- public void init()
 
-  { 
 
- CalculatorPanel calc=new CalculatorPanel();
getContentPane().add(calc); 
 
- } 
 
- }
 
-  
 
- class
CalculatorPanel extends JPanel implements ActionListener
 
-  { 
 
- JButton
n1,n2,n3,n4,n5,n6,n7,n8,n9,n0,plus,minus,mul,div,dot,equal; static JTextField
result=new JTextField("0",45);
 
 
- static String
lastCommand=null;
 
-  JOptionPane p=new JOptionPane(); 
 
- double
preRes=0,secVal=0,res;
 
-  
 
- private static
void assign(String no)
 
-  { if((result.getText()).equals("0"))
result.setText(no); else if(lastCommand=="=") { result.setText(no);
lastCommand=null; } else result.setText(result.getText()+no); }
 
-  
 
- public
CalculatorPanel() { setLayout(new BorderLayout()); result.setEditable(false);
result.setSize(300,200); add(result,BorderLayout.NORTH);  
 
 
- JPanel panel=new
JPanel(); panel.setLayout(new GridLayout(4,4));
 
-  
 
- n7=new
JButton("7"); panel.add(n7); n7.addActionListener(this); n8=new
JButton("8"); panel.add(n8); n8.addActionListener(this); n9=new
JButton("9"); panel.add(n9); n9.addActionListener(this); div=new
JButton("/"); panel.add(div); div.addActionListener(this);
 
-  
 
- n4=new
JButton("4"); panel.add(n4); n4.addActionListener(this); n5=new
JButton("5"); panel.add(n5); n5.addActionListener(this); 
 
- n6=new
JButton("6"); panel.add(n6); n6.addActionListener(this); mul=new
JButton("*"); panel.add(mul); mul.addActionListener(this);
 
-  
 
- n1=new
JButton("1"); panel.add(n1); n1.addActionListener(this); n2=new
JButton("2"); panel.add(n2); n2.addActionListener(this); n3=new
JButton("3"); panel.add(n3); n3.addActionListener(this); minus=new
JButton("-"); panel.add(minus); minus.addActionListener(this);
 
-  
 
- dot=new
JButton(".");
 
-  panel.add(dot);  
 
- dot.addActionListener(this);
 
-  n0=new JButton("0");
 
-  panel.add(n0); 
 
- n0.addActionListener(this);
 
-  equal=new JButton("=");
 
-  panel.add(equal); 
 
- equal.addActionListener(this);
 
-  plus=new JButton("+"); 
 
- panel.add(plus);
 
-  plus.addActionListener(this); 
 
- add(panel,BorderLayout.CENTER); 
 
- }
 
-  public void actionPerformed(ActionEvent ae) { if(ae.getSource()==n1) 
 
- assign("1"); 
 
- else if(ae.getSource()==n2) 
 
- assign("2"); 
 
- else
if(ae.getSource()==n3)
 
-  assign("3"); 
 
- else if(ae.getSource()==n4)
 
-  assign("4"); 
 
- else if(ae.getSource()==n5)
 
-  assign("5");
 
-  else
if(ae.getSource()==n6)
 
-  assign("6");
 
-  else if(ae.getSource()==n7)
 
-  assign("7"); 
 
- else if(ae.getSource()==n8)
 
-  assign("8");   
 
 
- else
if(ae.getSource()==n9)
 
-  assign("9"); 
 
- else if(ae.getSource()==n0)
 
-  assign("0");
 
-  else if(ae.getSource()==dot)
 
-  { 
 
- if(((result.getText()).indexOf("."))==-1) result.setText(result.getText()+"."); 
 
- } 
 
- else if(ae.getSource()==minus)
 
-  {
 
-  preRes=Double.parseDouble(result.getText());
 
-  lastCommand="-";
 
-  result.setText("0");
 
-  } 
 
- else
if(ae.getSource()==div)
 
-  { 
 
- preRes=Double.parseDouble(result.getText());
 
-  lastCommand="/"; result.setText("0");
 
-  } 
 
- else
if(ae.getSource()==equal)
 
-  { 
 
- secVal=Double.parseDouble(result.getText());   
 
-  
 
- if(lastCommand.equals("/")) 
 
- res=preRes/secVal; 
 
- else if(lastCommand.equals("*")) 
 
- res=preRes*secVal; 
 
- else if(lastCommand.equals("-"))
 
-  res=preRes-secVal;
 
-  else if(lastCommand.equals("+"))
 
-  res=preRes+secVal;
 
-  result.setText(" "+res); 
 
- lastCommand="="; 
 
- }
 
-  else if(ae.getSource()==mul
 
- ) {
preRes=Double.parseDouble(result.getText()); 
 
- lastCommand="*";
result.setText("0"); 
 
- } 
 
- else if(ae.getSource()==plus) {
preRes=Double.parseDouble(result.getText());
 
-  lastCommand="+";
 
-  result.setText("0"); 
 
 
- } } }