ACOS: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 22: Line 22:
{{Cl|DEFDBL}} A-Z
{{Cl|DEFDBL}} A-Z


{{Cl|INPUT}} "Give me an Angle (in Degrees) => "; Angle
{{Cl|INPUT}} {{Text|<nowiki>"Give me an Angle (in Degrees) => "</nowiki>|#FFB100}}; Angle
{{Cl|PRINT}}
{{Cl|PRINT}}
C = {{Cl|COS}}({{Cl|_D2R}}(Angle)) '_D2R is the command to convert Degrees to Radians, which is what COS expects
C = {{Cl|COS}}({{Cl|_D2R}}(Angle)) {{Text|<nowiki>'_D2R is the command to convert Degrees to Radians, which is what COS expects</nowiki>|#919191}}
{{Cl|PRINT}} "The COSINE of the Angle is: "; C
{{Cl|PRINT}} {{Text|<nowiki>"The COSINE of the Angle is: "</nowiki>|#FFB100}}; C
A = {{Cl|_ACOS}}(C)
A = {{Cl|_ACOS}}(C)
{{Cl|PRINT}} "The ACOS of "; C; " is: "; A
{{Cl|PRINT}} {{Text|<nowiki>"The ACOS of "</nowiki>|#FFB100}}; C; {{Text|<nowiki>" is: "</nowiki>|#FFB100}}; A
{{Cl|PRINT}} "Notice, A is the Angle in Radians.  If we convert it to degrees, the value is "; {{Cl|_R2D}}(A)
{{Cl|PRINT}} {{Text|<nowiki>"Notice, A is the Angle in Radians.  If we convert it to degrees, the value is "</nowiki>|#FFB100}}; {{Cl|_R2D}}(A)
{{CodeEnd}}
{{CodeEnd}}
{{small|Example by SMcNeill}}
{{Small|Example by SMcNeill}}
{{OutputStart}}
{{OutputStart}}
Give me an Angle (in Degrees) => ? 60
Give me an Angle (in Degrees) => ? 60
Line 41: Line 41:


{{PageSeeAlso}}
{{PageSeeAlso}}
* [[_D2G]] {{text|(degree to gradient}}, [[_D2R]] {{text|(degree to radian)}}
* [[_D2G]] {{Text|(degree to gradient}}, [[_D2R]] {{Text|(degree to radian)}}
* [[_G2D]] {{text|(gradient to degree)}}, [[_G2R]] {{text|(gradient to degree}}
* [[_G2D]] {{Text|(gradient to degree)}}, [[_G2R]] {{Text|(gradient to degree}}
* [[_R2D]] {{text|(radian to degree)}}, [[_R2G]] {{text|(radian to gradient}}
* [[_R2D]] {{Text|(radian to degree)}}, [[_R2G]] {{Text|(radian to gradient}}
* [[COS]] {{text|(cosine)}}, [[SIN]] {{text|(sine)}}, [[TAN]] {{text|(tangent)}}
* [[COS]] {{Text|(cosine)}}, [[SIN]] {{Text|(sine)}}, [[TAN]] {{Text|(tangent)}}
* [[_ASIN]] {{text|(arc sine)}}, [[ATN]] {{text|(arc tangent)}}
* [[_ASIN]] {{Text|(arc sine)}}, [[ATN]] {{Text|(arc tangent)}}
* [[_ACOSH]] {{text|(arc hyperbolic  cosine)}}, [[_ASINH]] {{text|(arc hyperbolic  sine)}}, [[_ATANH]] {{text|(arc hyperbolic  tangent)}}
* [[_ACOSH]] {{Text|(arc hyperbolic  cosine)}}, [[_ASINH]] {{Text|(arc hyperbolic  sine)}}, [[_ATANH]] {{Text|(arc hyperbolic  tangent)}}
* [[_ATAN2]] {{text|(Compute arc tangent with two parameters)}}
* [[_ATAN2]] {{Text|(Compute arc tangent with two parameters)}}
* [[_HYPOT]] {{text|(hypotenuse)}}
* [[_HYPOT]] {{Text|(hypotenuse)}}
*[[Mathematical Operations]]
*[[Mathematical Operations]]
*[[Mathematical Operations#Derived_Mathematical_Functions|Derived Mathematical Functions]]
*[[Mathematical Operations#Derived_Mathematical_Functions|Derived Mathematical Functions]]

Latest revision as of 13:06, 19 March 2023

The _ACOS function returns the angle measured in radians based on an input COSine value ranging from -1 to 1.


Syntax

radian_angle! = _ACOS(cosine_value!)


Description

  • The cosine_value! must be measured >= -1 and <= 1, or an error will be generated. (PRINT _ACOS(1.2) would give the result of -1.#IND, which is basically QB64's way of telling us that the number doesn't exist, much like 1/0 would.)
  • ARCCOSINE is the inverse function of COSine, which lets us turn a COSine value back into an angle.
  • Note: Due to rounding with floating point math, the _ACOS may not always give a perfect match for the COS angle which generated this. You can reduce the number of rounding errors by increasing the precision of your calculations by using DOUBLE or _FLOAT precision variables instead of SINGLE.


Availability

  • Version 1.000 and up.


Examples

Example: Converting a radian angle to its COSine and using that value to find the angle in degrees again using _ACOS:

DEFDBL A-Z

INPUT "Give me an Angle (in Degrees) => "; Angle
PRINT
C = COS(_D2R(Angle)) '_D2R is the command to convert Degrees to Radians, which is what COS expects
PRINT "The COSINE of the Angle is: "; C
A = _ACOS(C)
PRINT "The ACOS of "; C; " is: "; A
PRINT "Notice, A is the Angle in Radians.  If we convert it to degrees, the value is "; _R2D(A)
Example by SMcNeill
Give me an Angle (in Degrees) => ? 60

The COSINE of the Angle is:  .5000000000000001
The ACOS of  .5000000000000001  is:  1.047197551196598
Notice, A is the Angle in Radians.  If we convert it to degrees, we discover the value is  60


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link