Java Calculator Program

Java Calculator Program

Hi, so I need to make a program that "works like a calculator". I need to make two versions:

1) I'm given the Expression Class and need to implement the children classes, which are Number, Product, Sum, Quotient, Difference, and Modulus. The five types of binary operation expressions will each have two (sub) expressions, a left hand side and a right hand side (or in the case of a quotient a numerator and a denominator). Thus each binary operation class will have a constructor that takes two other Expression objects as arguments.

Numbers on the other hand will only store a single double. Thus their only constructor will take a double.

All expressions know how to answer two messages: the toString() method which will provide a String representation of the expression the object represents. On the other hand, the evaluateMe() method will cause the expression to compute its value and return it (as a double). There is only one twist to this, and that is the toString() of numbers should only print out to two decimal places (using a java.text.DecimalFormat object). To give you some idea of what is required, consider the following code:

Sum s1 = new Sum(new Number(7.123456789), new Number(11.3344)); Sum s2 = new Sum(s1, new Product(s1, new Number(3))); System.out.println("s2 = " + s2 + " with value " + s2.evaluateMe()); This should, when executed print out:

s2 = ((7.12 + 11.33) + ((7.12 + 11.33) * 3)) with value 73.831427156 The toString() method should hold no surprises really, except that in the Number version you'll have to format the return value a bit. But check out either the solutions to the first assignment or the description of the first project. The evaluateMe() method is also not very complex. In the Number case it should just return the stored value, while in the Sum case it will just ask its two subexpressions to evaluate themselves, and then return the resulting sum of those doubles.

2) The new intermediate class BinaryOperation does most/all of the work. Now define the classes Sum, Product, Quotient, Difference and Modulus as subclasses of BinaryOperation. They should be much much simpler.

The starter code for Expression is:

public abstract class Expression {
 public abstract String toString();
 public abstract double evaluateMe();
}

The class BinaryOperation is:

public abstract class BinaryOperation extends Expression{

private Expression lhs;
 private Expression rhs;
 private char binaryOperation;

 public String toString(){
 return "(" +
  lhs.toString() + 
 " " + 
 binaryOperation + 
 " " + 
 rhs.toString()
  + ")";
 };

 public double evaluateMe(){
 return myOperation(lhs.evaluateMe(),
 rhs.evaluateMe());
 };


protected abstract double myOperation(double d1, double d2);

 BinaryOperation(Expression e1, Expression e2, char op){
 lhs = e1;
 rhs = e2;
 binaryOperation = op;
 }
}

THANKS IN ADVANCE!

View Answers









Related Tutorials/Questions & Answers:
Java Calculator Program
Java Calculator Program  Hi, so I need to make a program that "works like a calculator". I need to make two versions: 1) I'm given the Expression Class and need to implement the children classes, which are Number, Product, Sum
Java Calculator program - Java Beginners
Java Calculator program  import java.awt.*; import javax.swing.*; import java.awt.event.*; class Calculator implements ActionListener { int c,n...://www.roseindia.net/java/example/java/swing/calculator-in-swing.shtml Hope
Advertisements
thread program for calculator implementation
thread program for calculator implementation  Hi i'm prem i need calculator progrm in java that are implemented by Thread interface.....pls strong text
Calculator program in Java
Calculator program in Java is used by programmer to add, subtract, multiply... program in Java package Tutorial; import java.io.*; class calculator... a class "calculator" is used. System.in takes the input from the system/user at run
simple calculator program in javascript
simple calculator program in javascript  strong textsimple calculator in javascript
Program for Calculator - Swing AWT
Program for Calculator  write a program for calculator?  Hi Friend, Please visit the following link: http://www.roseindia.net/java/example/java/swing/calculator-in-swing.shtml Hope that it will be helpful
How to Write a Calculator Program in Java?
How to Write a Calculator Program in Java? In this Java Tutorial you will learn how to write a Calculator program in Java in easy steps. Calculator program..._TO_REPLACE_2 Example of Calculator program in Java package Tutorial
How to write calculator in J2ME program?
How to write calculator in J2ME program?  How to write calculator in J2ME program
Calculator
Calculator  need a simple java program to degin a CALCULATOR without using ADVANCED JAVA....   Calculator in Java Swing
calculator - Java Interview Questions
calculator  create calculator by java code  Hi Friend, Please visit the following link: http://www.roseindia.net/java/example/java/swing/calculator-in-swing.shtml Thanks
simple calculator - Java Beginners
simple calculator  how can i create a simple calculator using java codes?  Hi Friend, Please visit the following link: http://www.roseindia.net/java/example/java/swing/calculator-in-swing.shtml Thanks
base calculator.. - Java Beginners
?? there's always an error (Error : Invalid path, "C:\Program Files\Java\jre1.6.0_01\bin\javac.exe" -classpath "C:\Program Files\Java\jdk1.6.0_01\bin" -d "C... to be set. In first path: change as C:\Program Files\Java\jdk1.6.0_01\bin
Scientific Calculator - Java Beginners
Scientific Calculator  Develop a scientific calculator using even-driven programming paradigm of Java.? Thanks in ADVANCE  Hi Friend, Please visit the following link: http://www.roseindia.net/tutorial/java
matrix calculator - Java Beginners
matrix calculator  hi..... can you help me in writing source code of matrix calculator in java... i know you are the best you can do it!!! show yourself
Simple Java Calculator - Java Beginners
Simple Java Calculator  Write a Java program to create simple Calculator for 4 basic Math operations, Addition, Subtraction, Multiplication and Division. The calculator should simulate the look of handheld calculator containing
base calculator.. - Java Beginners
base calculator..  Help, i need some help about a base calculator.. i don't know how to start
calculator in java with stack
calculator in java with stack  i want calcultor with interface in java and in interface there is button called postfix ,,, when the user enter opertions and numbers first check if is vaild or not then convert to postfix
calculator - Java Server Faces Questions
calculator  Some ideas for the project of calculator
Writing Calculator Program in Swing
Writing Calculator Program in Swing   ... shot. For developing a small calculator program in swing we need two different... in Calculator.java class. Calculator Code in Java SwingADS_TO_REPLACE_2 Please save
java loan calculator applet help
java loan calculator applet help  Hi, I could use some help correcting a code here. I need to write a Java applet program (together with its html...); that java cannot find symbol and it points to where Loan is after new
Swimming Pool Calculator - Java Beginners
Swimming Pool Calculator  I have to write a program to calculate... Calculator is one that is very simple to use. As you can see, it is a user... depth of a pool and the program will calculate the volume of that pool based
Swimming Pool Calculator - Java Beginners
Swimming Pool Calculator  Okay, so I tried making the program with this coding: import java.awt.*; import javax.swing.*; import java.awt.event.... Calculator", tempCalc ); jtabbedPane.addTab( "Customers", customers
Swimming Pool Calculator - Java Beginners
Swimming Pool Calculator  When I run the program the login window doesn't appear...Please help 1)LoginForm.java import javax.swing.*; import...()); mainFrame = new JFrame("Swimming Pool Volume Calculator"); calcButton = new
Graphical calculator using AWT - Java Beginners
calculator program."); class CalcGUI extends JFrame { private final Font...Graphical calculator using AWT  Hi Sir, Thanks for the reply...); this.pack(); this.setTitle("Simple Calculator"); this.setResizable(false
Graphical calculator using AWT - Java Beginners
Graphical calculator using AWT  hi Sir, I need a source code for the following prgm...pls help me.. Implement a simple graphical calculator using AWT.The calculator shd perform simple operation like addition, subtraction
Simple Calculator Application In Java Script
Simple Calculator Application In Java Script  ... the basics of JavaScript and create your first JavaScript program. What is simple Calculator The objective of this project is  learn how to write a simple
Calculator class
Calculator class  I am a beginner in Eclipse. I have to do a program called calculator that adds numbers. This is my code so far: //Margaret //ICS... for this generated file go to * Window - Preferences - Java - Code Style - Code Templates
ModuleNotFoundError: No module named 'Calculator'
ModuleNotFoundError: No module named 'Calculator'  Hi, My Python program is throwing following error: ModuleNotFoundError: No module named 'Calculator' How to remove the ModuleNotFoundError: No module named '
calculator midlet
calculator midlet  give me code calculator midlet in bluetooth application with j2me
Java Swing Scientific Calculator
Java Swing Scientific Calculator A Scientific Calculator is a very powerful and general purpose calculator. In addition to basic arithmetic functions... calculator using java swing. Here is the code: import java.awt.*; import
java program for
java program for   java program for printing documents,images and cards
a Java program
a Java program    Write a Java program to print even numbers from 2 to 1024? Write a Java program to print ? My Name is Mirza? 100 times? Write a Java program to print Fibonacci Series? Write a Java program to reverse a number
Java Program
Java Program  A Java Program that print the data on the printer but buttons not to be printed
java program
java program  write a program to print 1234 567 89 10
Calculator - JSP-Servlet
Calculator  Dear Deepak Sir, Calculator program is avilable in Jsp... calculator program in jsp function checkValue(){ var msg...; } Simple calculator program in jsp /> >
java program
java program  Write a program to demonstrate the concept of various possible exceptions arising in a Java Program and the ways to handle them.  ... in Java
java program
java program  how to write an addition program in java without using arithematic operator
java program
java program  write a java program to display array list and calculate the average of given array
java program
java program  Write a java program to do matrix addition operation On two given matrices
java program
java program  write java program for constructor,overriding,overriding,exception handling
java program
java program  write a java program to display array list and calculate the average of given array
Java Program
Java Program  java program to insert row in excel sheet after identifying an object
java program
java program  java program to implement the reflection of a particular class details like constructor,methods and fields with its modifiers
java program
java program  Write a java program to find the number of Positive numbers in m* n matrix
java program
java program  Write a program to create an applet and display The message "welcome to java
java program
java program  hi friends how to make a java program for getting non prime odd numbers in a given series
java program
java program   Write a program to find the difference between sum of the squares and the square of the sums of n numbers
java program
java program  write a program to create text area and display the various mouse handling events
java program
java program  Develop the program calculatePipeArea. It computes the surface area of a pipe, which is an open cylinder. The program accpets three values: the pipes inner radius, its length, and the thickness of its wall
java program
java program  . Develop the program calculatePipeArea. It computes the surface area of a pipe, which is an open cylinder. The program accpets three values: the pipes inner radius, its length, and the thickness of its wall

Ads