Linux Calculator in Java, Basic Computer Science

Assignment Help:
Hello,
Could you create a linux calculator using very basic java code (not complex, because I am a novice java coder). It should be called into the terminal for interaction.
Thank You!!
Here is the assignment:

I have a problem performing simple arithmetic operations. I need it to
perform addition, subtraction, multiplication, division, and exponentiation.
The program should read operations from standard input and/or from a file. If it reads from a file then the file will contain all of the operations and data. If the program reads from standard input then the program is interactive. It should be able to do both.
The program is to be called xcalc. It is to be run from the UNIX command line prompt. A sample execution is below.

$calc file l file 2
$calc < file 1
$calc
It will read from the standard input and write to the standard output with the capability of i/o redirection. I also want the program to have the command line option capability to specify an output file
Scale -O outputfilename inputfilenamel
The numbers read are to be unsigned integers and the operations are to be in prefix form. The operations are addition, subtraction, multiplication, division, and exponentiation.

The control d character (the UNIX end of file character) will end the program if it is interactive. The following sample list of operations should help clear up any confusion.

"+11 11"

"-22 11"
"*22 2"
"/22 2"

"e 2 3"


The operation must be the very first character on the input line followed by 1 or more blanks. Any number of blanks can be before or after each operand. No blanks can be embedded into a number. Sample execution and operation follows that illustrate interactive mode
$xcalc
>>+ 11 22
>>11 + 22 =33
>>*22 2
>>22 * 2 = 44
>>

There is one arithmetic operation that can be used to implement all others. Determine which one and use it to implement all of the operations: "+, -, *, /, and e." If you cannot determine which operation is the "one magical all powerful operation" then try using addition "+".
You should check for invalid operations and for division by zero.
This program is to be developed using the principles discussed in class
Each operation should be implemented as a function. See the example below.

int add (int augend, int addend)
{
int sum;
sum = augend + addend;

return sum;
}
If you cannot figure out how to use addition "+" then use the : "+, -, *, /, and e." in a straight forward manner.
int multiply (int multiplicand, int multiplier)
{
int product;
product = multiplicand * multiplier;

return product;
}

Related Discussions:- Linux Calculator in Java

Digital to analogue conversion (dac), Digital to analogue conversion (dac):...

Digital to analogue conversion (dac): Since many systems used on aircraft will require outputs in analogue form, it will be necessary to be able to convert the digital informat

Briefly explain the stage and the timeline, Question 1 Briefly explain the...

Question 1 Briefly explain the Stage and the Timeline Question 2 What is Device Central? How it is useful for previewing mobile content? Question 3 Which are the f

Computerised systems, Computerised Systems : You would have realized by no...

Computerised Systems : You would have realized by now that computing systems are most useful for manipulating information. Any organisation and management of information basically

Languages used in artificial intelligence, R e presentations/Languages Us...

R e presentations/Languages Used: Many people are taught Artificial Intelligence with the opening line: "The three most essential things in Artificial Intelligence are repres

Stack, How to write an algorithm to reverse the order of elements on a stac...

How to write an algorithm to reverse the order of elements on a stack s using two additional stacks

Types of policy, want to get detail understanding of the types of security ...

want to get detail understanding of the types of security policies including enterprise security policy, issues specific policies etc

Distinguish between the cryptoprovider and the managed class, QUESTION ...

QUESTION (a) Using the Luhn 10 check formula verify whether the following account number is compliant: 49927398716. Show details of your workings (b) Why is it advisable to

Time sharing, Time Sharing Time sharing allows a large number of users ...

Time Sharing Time sharing allows a large number of users at various remote terminals to simultaneously use a centrally located computer for problem solving. Each user operates

Characterizations of artificial intelligence, Characterizations of Artifici...

Characterizations of Artificial Intelligence Artificial Intelligence is a typical science to describe, because it has fuzzy borders with, psychology, computer science, mathemat

Eeprom, Ask queswhat is the advanages of eeprom?

Ask queswhat is the advanages of eeprom?

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd