Computer Science, asked by pubg12, 1 year ago

write a program in java to create a calculator

Answers

Answered by Bond54132
4

import java.awt.*;

import java.awt.event.*;

public class calculator implements ActionListener

{

   int c,n;

   String s1,s2,s3,s4,s5;

   Frame f;

   Button b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17;

   Panel p;

   TextField tf;

   GridLayout g;

   calculator()

   {

       f = new Frame("My calculator");

       p = new Panel();

       f.setLayout(new FlowLayout());

       b1 = new Button("0");

       b1.addActionListener(this);

       b2 = new Button("1");

       b2.addActionListener(this);

       b3 = new Button("2");

       b3.addActionListener(this);

       b4 = new Button("3");

       b4.addActionListener(this);

       b5 = new Button("4");

       b5.addActionListener(this);

       b6 = new Button("5");

       b6.addActionListener(this);

       b7 = new Button("6");

       b7.addActionListener(this);

       b8 = new Button("7");

       b8.addActionListener(this);

       b9 = new Button("8");

       b9.addActionListener(this);

       b10 = new Button("9");

       b10.addActionListener(this);

       b11 = new Button("+");

       b11.addActionListener(this);

       b12 = new Button("-");

       b12.addActionListener(this);

       b13 = new Button("*");

       b13.addActionListener(this);

       b14 = new Button("/");

       b14.addActionListener(this);

       b15 = new Button("%");

       b15.addActionListener(this);

       b16 = new Button("=");

       b16.addActionListener(this);

       b17 = new Button("C");

       b17.addActionListener(this);

       tf = new TextField(20);

       f.add(tf);

       g = new GridLayout(4,4,10,20);

       p.setLayout(g);

       p.add(b1);p.add(b2);p.add(b3);p.add(b4);p.add(b5);p.add(b6);p.add(b7);p.add(b8);p.add(b9);

       p.add(b10);p.add(b11);p.add(b12);p.add(b13);p.add(b14);p.add(b15);p.add(b16);p.add(b17);

       f.add(p);

       f.setSize(300,300);

       f.setVisible(true);

   }

   public void actionPerformed(ActionEvent e)

   {

       if(e.getSource()==b1)

       {

           s3 = tf.getText();

           s4 = "0";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b2)

       {

           s3 = tf.getText();

           s4 = "1";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b3)

       {

           s3 = tf.getText();

           s4 = "2";

           s5 = s3+s4;

           tf.setText(s5);

       }if(e.getSource()==b4)

       {

           s3 = tf.getText();

           s4 = "3";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b5)

       {

           s3 = tf.getText();

           s4 = "4";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b6)

       {

           s3 = tf.getText();

           s4 = "5";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b7)

       {

           s3 = tf.getText();

           s4 = "6";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b8)

       {

           s3 = tf.getText();

           s4 = "7";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b9)

       {

           s3 = tf.getText();

           s4 = "8";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b10)

       {

           s3 = tf.getText();

           s4 = "9";

           s5 = s3+s4;

           tf.setText(s5);

       }

       if(e.getSource()==b11)

       {

           s1 = tf.getText();

           tf.setText("");

           c=1;

 

       }

       if(e.getSource()==b12)

       {

           s1 = tf.getText();

           tf.setText("");

           c=2;

 

       }

       if(e.getSource()==b13)

       {

           s1 = tf.getText();

           tf.setText("");

           c=3;

 

       }

       if(e.getSource()==b14)

       {

           s1 = tf.getText();

           tf.setText("");

           c=4;

 

       }

       if(e.getSource()==b15)

       {

           s1 = tf.getText();

           tf.setText("");

           c=5;

 

       }

       if(e.getSource()==b16)

       {

           s2 = tf.getText();

           if(c==1)

           {

               n = Integer.parseInt(s1)+Integer.parseInt(s2);

               tf.setText(String.valueOf(n));

           }

           else

           if(c==2)

           {

               n = Integer.parseInt(s1)-Integer.parseInt(s2);

               tf.setText(String.valueOf(n));

           }

           else

           if(c==3)

           {

               n = Integer.parseInt(s1)*Integer.parseInt(s2);

               tf.setText(String.valueOf(n));

           }

           if(c==4)

           {

               try

               {

                   int p=Integer.parseInt(s2);

                   if(p!=0)

                   {

                                       n = Integer.parseInt(s1)/Integer.parseInt(s2);

                   tf.setText(String.valueOf(n));

                    }

                    else

                       tf.setText("infinite");

 

               }

               catch(Exception i){}

           }

           if(c==5)

           {

               n = Integer.parseInt(s1)%Integer.parseInt(s2);

               tf.setText(String.valueOf(n));

           }

       }

       if(e.getSource()==b17)

       {

           tf.setText("");

       }

   }

 

   public static void main(String[] abc)

   {

       calculator v = new calculator();

   }

}

i hope this solves your doubt please mark me as the brainliest

Answered by NethraKarthikkumar
1

import java.util.Scanner;

public class Calculator {

   public static void main(String[] args) {

    double num1, num2;

       Scanner scanner = new Scanner(System.in);

       System.out.print("Enter first number:");

       /* We are using data type double so that user

        * can enter integer as well as floating point

        * value

        */

       num1 = scanner.nextDouble();

       System.out.print("Enter second number:");

       num2 = scanner.nextDouble();

       System.out.print("Enter an operator (+, -, *, /): ");

       char operator = scanner.next().charAt(0);

       scanner.close();

       double output;

       switch(operator)

       {

           case '+':

            output = num1 + num2;

               break;

           case '-':

            output = num1 - num2;

               break;

           case '*':

            output = num1 * num2;

               break;

           case '/':

            output = num1 / num2;

               break;

           /* If user enters any other operator or char apart from

            * +, -, * and /, then display an error message to user

            *  

            */

           default:

               System.out.printf("You have entered wrong operator");

               return;

       }

       System.out.println(num1+" "+operator+" "+num2+": "+output);

   }

}

Similar questions