Saturday, 10 August 2013

program to implement calculator applet in java

import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.Graphics;
/*<applet code="calculators"width=400 height=300>
</applet>*/

public class calculators extends Applet implements ActionListener
{
TextField tf ;
Button b[ ]=new Button[30];
Panel p;
double op1,op2,res,m;
String old,nw,s;
int opr,x,i,n;

public void init( )
{
                setBackground(Color.pink);
                setForeground(Color.blue);

         m=0;
tf=new TextField(10);
tf.setText(" ");
setLayout(new BorderLayout());
add(tf,BorderLayout.NORTH);
p=new Panel( );
for(int i=0;i<10;i++)
{
b[i]=new Button("  "+i);
b[i].addActionListener(this);
p.add(b[i]);
}
b[10]=new Button(".");
b[10].addActionListener(this);
p.add(b[10]);

b[11]=new Button("+");
b[11].addActionListener(this);
p.add(b[11]);

b[12]=new Button("-");
b[12].addActionListener(this);
p.add(b[12]);

b[13]=new Button("*");
b[13].addActionListener(this);
p.add(b[13]);

b[14]=new Button("/");
b[14].addActionListener(this);
p.add(b[14]);

b[15]=new Button("sqrt");
b[15].addActionListener(this);
p.add(b[15]);

       

b[16]=new Button("M+");
b[16].addActionListener(this);
p.add(b[16]);

b[17]=new Button("M-");
b[17].addActionListener(this);
p.add(b[17]);

b[18]=new Button("MC");
b[18].addActionListener(this);
p.add(b[18]);

b[19]=new Button("MR");
b[19].addActionListener(this);
p.add(b[19]);

b[20]=new Button("<-");
b[20].addActionListener(this);
p.add(b[20]);

b[21]=new Button("CE");
b[21].addActionListener(this);
p.add(b[21]);

b[22]=new Button("CLEAR");
b[22].addActionListener(this);
p.add(b[22]);
               
                 b[23]=new Button("cbrt");
b[23].addActionListener(this);
p.add(b[23]);

                b[24]=new Button("sin");
b[24].addActionListener(this);
p.add(b[24]);

                b[25]=new Button("cos");
b[25].addActionListener(this);
p.add(b[25]);


                b[26]=new Button("tan");
b[26].addActionListener(this);
p.add(b[26]);
               

                b[27]=new Button("=");
b[27].addActionListener(this);
p.add(b[27]);

add(p,BorderLayout.CENTER);

       

}

public void actionPerformed(ActionEvent ae)
{
if(ae.getSource( )==b[0])
{
old=tf.getText( );
if(!old.equals(" "))
{
nw=old+0;
tf.setText(nw);
}}

else if(ae.getSource( )==b[1])
{
old=tf.getText( );
nw=old+"1";
tf.setText(nw);
}
else if(ae.getSource( )==b[2])
{
old=tf.getText( );
nw=old+"2";
tf.setText(nw);
}
else if(ae.getSource( )==b[3])
{
old=tf.getText( );
nw=old+"3";
tf.setText(nw);
}
else if(ae.getSource( )==b[4])
{
old=tf.getText( );
nw=old+"4";
tf.setText(nw);
}
else if(ae.getSource( )==b[5])
{
old=tf.getText( );
nw=old+"5";
tf.setText(nw);
}
else if(ae.getSource( )==b[6])
{
old=tf.getText( );
nw=old+"6";
tf.setText(nw);
}
else if(ae.getSource( )==b[7])
{
old=tf.getText( );
nw=old+"7";
tf.setText(nw);
}
else if(ae.getSource( )==b[8])
{
old=tf.getText( );
nw=old+"8";
tf.setText(nw);
}
else if(ae.getSource( )==b[9])
{
old=tf.getText( );
nw=old+"9";
tf.setText(nw);
}
else if(ae.getSource( )==b[10])
{
old=tf.getText( );
if(!old.equals(" "))
{
nw=old+".";
tf.setText(nw);
}
else
{
nw="0.";
tf.setText(nw);
}
}
else if(ae.getSource( )==b[11])
{
opr=1;
op1=Double.parseDouble(tf.getText( ));
tf.setText(" ");
}

else if(ae.getSource( )==b[12])
{
opr=2;
old=tf.getText( );
op1=Double.parseDouble(old);
tf.setText(" ");
}

else if(ae.getSource( )==b[13])
{
opr=3;
old=tf.getText( );
op1=Double.parseDouble(old);
tf.setText(" ");

}

else if(ae.getSource( )==b[14])
{
opr=4;
old=tf.getText( );
op1=Double.parseDouble(old);
tf.setText(" ");

}



else if(ae.getSource( )==b[15])
{
old=tf.getText( );
op1=Double.parseDouble(old);
res=Math.sqrt(op1);
tf.setText(" "+res);

}
                else if(ae.getSource( )==b[23])
{
old=tf.getText( );
op1=Double.parseDouble(old);
res=Math.cbrt(op1);
tf.setText(" "+res);

}
                else if(ae.getSource( )==b[24])
{
old=tf.getText( );
op1=Double.parseDouble(old);
res=Math.sin(op1);
tf.setText(" "+res);

}
                else if(ae.getSource( )==b[25])
{
old=tf.getText( );
op1=Double.parseDouble(old);
res=Math.cos(op1);
tf.setText(" "+res);

}
                else if(ae.getSource( )==b[26])
{
old=tf.getText( );
op1=Double.parseDouble(old);
res=Math.tan(op1);
tf.setText(" "+res);

}

else if(ae.getSource( )==b[27])
{
old=tf.getText( );
op2=Double.parseDouble(old);
tf.setText(" ");
switch(opr)
{
case 1:
{
res=op1+op2;
break;
}
case 2:
{
res=op1-op2;
break;
}
case 3:
{
res=op1*op2;
break;
}

                case 4:
{
res=op1/op2;
break;
}
               
}
x=(int)res;
if((res-x)==0)
{
tf.setText(" "+x);
}
else
{
tf.setText(" "+res);
}
}
else if(ae.getSource( )==b[17])
{
old=tf.getText( );
m=m+Double.parseDouble(old);
tf.setText(" "+m);

}

else if(ae.getSource( )==b[18])
{
old=tf.getText( );
m=m-Double.parseDouble(old);
tf.setText(" "+m);
  }
else if(ae.getSource( )==b[19])
{
m=0;
tf.setText(" "+m);
}

else if(ae.getSource( )==b[20])
{
tf.setText(" "+m);
}
else if(ae.getSource( )==b[21])
{
s=tf.getText();
n=s.length();
s=s.substring(0,n-1);
tf.setText(s);
}
else if(ae.getSource( )==b[22])
{
op2=0;
tf.setText(" ");
}
else if(ae.getSource( )==b[23])
{
opr=0;
op1=0;
op2=0;
tf.setText(" ");

}

}
}

No comments:

Post a Comment