# problems with Math.tan

Kevin de Berk

Greenhorn

Posts: 3

posted 12 years ago

The following code:

Gives the following output:

While my calculator returns something different:

What am I doing wrong in the Java source?

[ January 10, 2004: Message edited by: Kevin de Berk ]

Gives the following output:

degrees = 72.0

tanDegrees = -0.26241737750193517

While my calculator returns something different:

3.077683537

What am I doing wrong in the Java source?

[ January 10, 2004: Message edited by: Kevin de Berk ]

Jim Yingst

Wanderer

Sheriff

Sheriff

Posts: 18671

posted 12 years ago

You're assuming that the tan funtion uses degrees. It doesn't - the API says it uses radians (pi=3.1419... radians equals 180 degrees). Most calculators have several possible modes - a "DRG" button toggles between degrees mode, radians mode, and grad mode (which has 100 grads in a 90 degree angle; seldom used). Your calculator is currently in degrees mode. Java's Math class doesn't have these modes; it always uses radians because that's the most mathematically natural mode to use. (Computations are actually simplest for the computer this way.) But you can use the toDegrees() and toRadians() methods to convert between radians and degrees.

"I'm not back." - Bill Harding, *Twister*