This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.

I don't know what exactly are the mathmatics operation you really need to calculate, but it seems that they are sin, cos ...etc and power, sqrt. i think that in one or two hours you could already have your simple calculator up and working.

Omar Al Kababji - Electrical & Computer Engineer
[SCJP - 90% - Story] [SCWCD - 94% - Story] [SCBCD - 80% - Story] | My Blog

You mean you want something which will solve those equations? That sounds awkward. If you can do it with pencil and paper, then you can program a method/methods to use the same algorithm.

By the way: I can give you the solution for sin^2(x) + cos^2(x) = 1 easily. It is true for every value of x!

Try Googling for "algebra formula solver"; I did and got several promising links.

Another approach would be to guess a solution and use Newton's approximation. That will give an answer, but will be awkward to program.

Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 44545

34

posted

0

. . . and look at these equivalences; you will find other equalities true for every value here.

Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 44545

34

posted

0

There is a solution for 1 + tan^2(x) = cos^2(x). You should be able to work it out in your head. Remember the solution will repeat every PI radians, or every 2PI radians!

Khaled Mahmoud
Ranch Hand

Joined: Jul 15, 2006
Posts: 361

posted

0

It seems you all misunderstood what I want.
I want to able to define the rules I want for example before instructing the program to solve the equation I give it a set of rules (Equations) the simplifing based on.

For example I want sin ( x ) ^ 2 + cos ( x ) ^ 2 = log(x) + 5

I want to be able to dynamically enter the rules the application will solve or simplify the equation according to the rules I enter.

Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 44545

34

posted

0

Difficult. You actually need to parse what you are writing. Same procedure as if you were writing a compiler.

Can you give an example of a "rule" the user would enter, and how it would specify how to simplify an expression?

Khaled Mahmoud
Ranch Hand

Joined: Jul 15, 2006
Posts: 361

posted

0

I already posted an example

A rule :

sin ( x ) ^ 2 + 1 = log( x ) + 20

The string I enter should be searched and any equation in the form sin ( x ) ^ 2 + 1 to should be converted against the specified rule.

I can enter as many rules as I want.

Ulf Dittmer
Rancher

Joined: Mar 22, 2005
Posts: 42958

73

posted

0

Ah, that's the realm of packages like Maple and Mathematica. I doubt that anything like this is available in Java, and if it is, it's probably going to cost a substantial amount of money.