Example 1: how to make a calculator in java
package javaCode;
import java.util.Scanner;
public class testCode {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Would you like to Add, Subtract, Divide, or Multiply?");
String mathType = scan.next();
if (mathType.equalsIgnoreCase("add")) {
System.out.println("Whats the first number you want to add?");
int firstNumber = scan.nextInt();
System.out.println(firstNumber + " + ");
System.out.println("Enter your second number");
int secondNumber = scan.nextInt();
System.out.println(firstNumber + " + " + secondNumber + " =");
System.out.println(firstNumber + secondNumber);
} else if (mathType.equalsIgnoreCase("subtract")) {
System.out.println("Whats the first number you want to subtract?");
int firstNumber = scan.nextInt();
System.out.println(firstNumber + " - ");
System.out.println("Enter your second number");
int secondNumber = scan.nextInt();
System.out.println(firstNumber + " - " + secondNumber + " =");
System.out.println(firstNumber - secondNumber);
} else if (mathType.equalsIgnoreCase("divide")) {
System.out.println("Whats the first number you want to divide?");
int firstNumber = scan.nextInt();
System.out.println(firstNumber + " % ");
System.out.println("Enter your second number");
int secondNumber = scan.nextInt();
System.out.println(firstNumber + " % " + secondNumber + " =");
System.out.println(firstNumber / secondNumber);
} else if (mathType.equalsIgnoreCase("multiply")){
System.out.println("Whats the first number you want to multiply?");
int firstNumber = scan.nextInt();
System.out.println(firstNumber + " x ");
System.out.println("Enter your second number");
int secondNumber = scan.nextInt();
System.out.println(firstNumber + " x " + secondNumber + " =");
System.out.println(firstNumber * secondNumber);
}
}
}
Example 2: java calculator code
Save this file as MyCalculator.java
to compile it use
javac MyCalculator.java
to use the calcuator do this
java MyCalculator
**********************************************/
import java.awt.*;
import java.awt.event.*;
public class MyCalculator extends Frame
{
public boolean setClear=true;
double number, memValue;
char op;
String digitButtonText[] = {"7", "8", "9", "4", "5", "6", "1", "2", "3", "0", "+/-", "." };
String operatorButtonText[] = {"/", "sqrt", "*", "%", "-", "1/X", "+", "=" };
String memoryButtonText[] = {"MC", "MR", "MS", "M+" };
String specialButtonText[] = {"Backspc", "C", "CE" };
MyDigitButton digitButton[]=new MyDigitButton[digitButtonText.length];
MyOperatorButton operatorButton[]=new MyOperatorButton[operatorButtonText.length];
MyMemoryButton memoryButton[]=new MyMemoryButton[memoryButtonText.length];
MySpecialButton specialButton[]=new MySpecialButton[specialButtonText.length];
Label displayLabel=new Label("0",Label.RIGHT);
Label memLabel=new Label(" ",Label.RIGHT);
final int FRAME_WIDTH=325,FRAME_HEIGHT=325;
final int HEIGHT=30, WIDTH=30, H_SPACE=10,V_SPACE=10;
final int TOPX=30, TOPY=50;
MyCalculator(String frameText)
{
super(frameText);
int tempX=TOPX, y=TOPY;
displayLabel.setBounds(tempX,y,240,HEIGHT);
displayLabel.setBackground(Color.BLUE);
displayLabel.setForeground(Color.WHITE);
add(displayLabel);
memLabel.setBounds(TOPX, TOPY+HEIGHT+ V_SPACE,WIDTH, HEIGHT);
add(memLabel);
tempX=TOPX;
y=TOPY+2*(HEIGHT+V_SPACE);
for(int i=0; i<memoryButton.length; i++)
{
memoryButton[i]=new MyMemoryButton(tempX,y,WIDTH,HEIGHT,memoryButtonText[i], this);
memoryButton[i].setForeground(Color.RED);
y+=HEIGHT+V_SPACE;
}
tempX=TOPX+1*(WIDTH+H_SPACE); y=TOPY+1*(HEIGHT+V_SPACE);
for(int i=0;i<specialButton.length;i++)
{
specialButton[i]=new MySpecialButton(tempX,y,WIDTH*2,HEIGHT,specialButtonText[i], this);
specialButton[i].setForeground(Color.RED);
tempX=tempX+2*WIDTH+H_SPACE;
}
int digitX=TOPX+WIDTH+H_SPACE;
int digitY=TOPY+2*(HEIGHT+V_SPACE);
tempX=digitX; y=digitY;
for(int i=0;i<digitButton.length;i++)
{
digitButton[i]=new MyDigitButton(tempX,y,WIDTH,HEIGHT,digitButtonText[i], this);
digitButton[i].setForeground(Color.BLUE);
tempX+=WIDTH+H_SPACE;
if((i+1)%3==0){tempX=digitX; y+=HEIGHT+V_SPACE;}
}
int opsX=digitX+2*(WIDTH+H_SPACE)+H_SPACE;
int opsY=digitY;
tempX=opsX; y=opsY;
for(int i=0;i<operatorButton.length;i++)
{
tempX+=WIDTH+H_SPACE;
operatorButton[i]=new MyOperatorButton(tempX,y,WIDTH,HEIGHT,operatorButtonText[i], this);
operatorButton[i].setForeground(Color.RED);
if((i+1)%2==0){tempX=opsX; y+=HEIGHT+V_SPACE;}
}
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent ev)
{System.exit(0);}
});
setLayout(null);
setSize(FRAME_WIDTH,FRAME_HEIGHT);
setVisible(true);
}
static String getFormattedText(double temp)
{
String resText=""+temp;
if(resText.lastIndexOf(".0")>0)
resText=resText.substring(0,resText.length()-2);
return resText;