Monday, 23 December 2013

Simple Applet Calculator Program


import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
<applet code=Calc width=300 height=200>
</applet>
*/
public class Calc extends Applet implements ActionListener
{
Button one=new Button("1");
Button two=new Button("2");
Button three=new Button("3");
Button four=new Button("4");
Button five=new Button("5");
Button six=new Button("6");
Button seven=new Button("7");
Button eight=new Button("8");
Button nine=new Button("9");
Button zero=new Button("0");
Button plus=new Button("+");
Button minus=new Button("-");
Button div=new Button("/");
Button mul=new Button("*");
Button eql=new Button("=");
Button bk=new Button("C");
Button point=new Button(".");
TextField dis=new TextField("0");
Label rs=new Label(" ",Label.RIGHT);
boolean flag=true,calc=true;
String sign="";
Double x=0.0,y=0.0;
public void init()
{
setLayout(new GridLayout(3,1));
Panel d=new Panel();
d.setBackground(Color.gray);
d.setForeground(Color.blue);
d.setLayout(new BorderLayout(2,2));
d.add(BorderLayout.CENTER,dis);
d.setFont(new Font("SansSerif",Font.BOLD,18));
Panel r=new Panel();
r.setBackground(Color.white);
r.setForeground(Color.black);
r.setLayout(new BorderLayout());
r.add(BorderLayout.WEST,rs);
Panel b=new Panel();
b.setFont(new Font("SansSerif",Font.BOLD,14));
b.setBackground(Color.gray);
b.setForeground(Color.red);
b.setLayout(new GridLayout(4,4));
b.add(one);
b.add(two);
b.add(three);
b.add(four);
b.add(five);
b.add(six);
b.add(seven);
b.add(eight);
b.add(nine);
b.add(zero);
b.add(plus);
b.add(minus);
b.add(div);
b.add(mul);
b.add(eql);
b.add(bk);
b.add(point);
add(d);
add(r);
add(b);
one.addActionListener(this);
two.addActionListener(this);
three.addActionListener(this);
four.addActionListener(this);
five.addActionListener(this);
six.addActionListener(this);
seven.addActionListener(this);
eight.addActionListener(this);
nine.addActionListener(this);
zero.addActionListener(this);
plus.addActionListener(this);
div.addActionListener(this);
minus.addActionListener(this);
mul.addActionListener(this);
eql.addActionListener(this);
bk.addActionListener(this);
point.addActionListener(this);
}
public void actionPerformed(ActionEvent a)
{
if(flag==true)
{
dis.setText("");
flag=false;
}
String i=dis.getText();
rs.setText("");
if(a.getSource()==one)
{
dis.setText(i+"1");
}
else if(a.getSource()==two)
{
dis.setText(i+"2");
}
else if(a.getSource()==three)
{
dis.setText(i+"3");
}
else if(a.getSource()==four)
{
dis.setText(i+"4");
}
else if(a.getSource()==five)
{
dis.setText(i+"5");
}
else if(a.getSource()==six)
{
dis.setText(i+"6");
}
else if(a.getSource()==seven)
{
dis.setText(i+"7");
}
else if(a.getSource()==eight)
{
dis.setText(i+"8");
}
else if(a.getSource()==nine)
{
dis.setText(i+"9");
}
else if(a.getSource()==zero)
{
dis.setText(i+"0");
}
else if(a.getSource()==point)
{
dis.setText(i+".");
}
if((a.getSource()==plus)||(a.getSource()==div)||(a.getSource()==mul)||(a.getSource()==minus))
{
dis.setText("");
sign=a.getActionCommand();
calc=false;
try
{
String temp0=i;
Double temp1=new Double(temp0);
x=temp1.doubleValue();
}
catch(NumberFormatException n)
{
rs.setText("Illigal data is enterd");
return;
}
flag=true;
i="";
}
if(a.getSource()==eql)
{
if(calc==true)
{
rs.setText("Please enter values");
}
if(!calc)
{
try
{
String temp2=i;
Double temp3=new Double(temp2);
y=temp3.doubleValue();
}
catch(NumberFormatException n)
{
rs.setText("Illigal data is enterd");
return;
}
}
dis.setText("");
if(sign.equals("+"))
dis.setText(x+" "+sign+" "+y+" = "+(x+y));
else if(sign.equals("-"))
dis.setText(x+" "+sign+" "+y+" = "+ (x-y));
else if(sign.equals("*"))
dis.setText(x+" "+sign+" "+y+" = "+ (x*y));
else if(sign.equals("/"))
{
if(y!=0)
{
dis.setText(x+" "+sign+" "+y+" = "+ (x/y));
}
else
{
rs.setText("Division by zero is not possible");
}
}
}
if(a.getSource()==bk)
{
dis.setText("");
i="";
flag=true;
calc=true;
x=0.0;
y=0.0;
}
}
}


No comments:

Post a Comment