ACOS: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
Tag: Reverted
No edit summary
Tags: Undo Reverted
Line 7: Line 7:


{{PageDescription}}
{{PageDescription}}
* 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.)
* 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 [[COS]]ine, which lets us turn a [[COS]]ine value back into an angle.
* ARCCOSINE is the inverse function of [[COS]]ine, which lets us turn a [[COS]]ine 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]].
* 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]].
Line 18: Line 18:
{{PageExamples}}
{{PageExamples}}
''Example:'' Converting a radian angle to its COSine and using that value to find the angle in degrees again using _ACOS:
''Example:'' Converting a radian angle to its COSine and using that value to find the angle in degrees again using _ACOS:
{{CodeStart}}
{{CodeStart}} '' ''
{{Cl|DEFDBL}} A-Z
{{Cl|DEFDBL}} A-Z


Line 27: Line 27:
A = {{Cl|_ACOS}}(C)
A = {{Cl|_ACOS}}(C)
{{Cl|PRINT}} "The ACOS of "; C; " is: "; A
{{Cl|PRINT}} "The ACOS of "; C; " is: "; A
{{Cl|PRINT}} "Notice, A is the Angle in Radians.  If we convert it to degrees, the value is "; {{Cl|_R2D}}(A)
{{Cl|PRINT}} "Notice, A is the Angle in Radians.  If we convert it to degrees, the value is "; {{Cl|_R2D}}(A) '' ''
{{CodeEnd}}
{{CodeEnd}}
{{small|Example by SMcNeill}}
{{small|Example by SMcNeill}}

Revision as of 18:13, 22 January 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