laziness, impatience, and hubris PerlMonks

### Answer: How can I get sine, cosine, and tangent to return values in degrees?

by tachyon (Chancellor)
 on Dec 22, 2002 at 03:44 UTC Need Help??

Q&A > math > How can I get sine, cosine, and tangent to return values in degrees? - Answer contributed by tachyon

The perl sin and cos functions take arguments in the form of radians (rather than degrees). 180 degrees = Pi radians so both radians and degrees are measures of angle. You question has no answer per se as sin and cos do not return values that can be expressed as any measure of angle like radians or degrees. Hopefully this code covers what you want. The asin, acos and atan functions return radians and are the inverse functions of sin, cos and tan respectively:

```my \$pi = 3.14159265358979;

sub deg_to_rad { (\$_[0]/180) * \$pi }
sub rad_to_deg { (\$_[0]/\$pi) * 180 }
sub asin { atan2(\$_[0], sqrt(1 - \$_[0] * \$_[0])) }
sub acos { atan2( sqrt(1 - \$_[0] * \$_[0]), \$_[0] ) }
sub tan  { sin(\$_[0]) / cos(\$_[0])  }
sub atan { atan2(\$_[0],1) };

print 'sin 30 degrees is ', sin(deg_to_rad(30)), "\n";
print 'inverse sin 0.5 is ', rad_to_deg(asin(0.5)), ' degrees';
[download]```

• Comment on Answer: How can I get sine, cosine, and tangent to return values in degrees?
• Download Code
Replies are listed 'Best First'.
Re: Answer: How can I get sine, cosine, and tangent to return values in degrees?
by Belgarion (Chaplain) on Apr 29, 2004 at 17:42 UTC
Log In?
 Username: Password:

What's my password?
Create A New User
Chatterbox?
 [Corion]: A good daypart! talexb waves from Toronto. Up very early for some bizarre reason. marto waves

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2018-03-21 10:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
When I think of a mole I think of:

Results (267 votes). Check out past polls.

Notices?