Arduino数学库(math.h)包括一些用于操作浮点数的有用的数学函数。
库中的宏
以下是在标题math.h中定义的宏:
Given below is the list of macros defined in the header math.h
库函数
以下函数在标题 math.h 中定义 -
Given below is the list of functions are defined in the header math.h
例子
以下示例显示如何使用最常用的math.h库函数 -
double double__x = 45.45 ; double double__y = 30.20 ; void setup() { Serial.begin(9600); Serial.print("cos num = "); Serial.println (cos (double__x) ); // returns cosine of x Serial.print("absolute value of num = "); Serial.println (fabs (double__x) ); // absolute value of a float Serial.print("floating point modulo = "); Serial.println (fmod (double__x, double__y)); // floating point modulo Serial.print("sine of num = "); Serial.println (sin (double__x) ) ;// returns sine of x Serial.print("square root of num : "); Serial.println ( sqrt (double__x) );// returns square root of x Serial.print("tangent of num : "); Serial.println ( tan (double__x) ); // returns tangent of x Serial.print("exponential value of num : "); Serial.println ( exp (double__x) ); // function returns the exponential value of x. Serial.print("cos num : "); Serial.println (atan (double__x) ); // arc tangent of x Serial.print("tangent of num : "); Serial.println (atan2 (double__y, double__x) );// arc tangent of y/x Serial.print("arc tangent of num : "); Serial.println (log (double__x) ) ; // natural logarithm of x Serial.print("cos num : "); Serial.println ( log10 (double__x)); // logarithm of x to base 10. Serial.print("logarithm of num to base 10 : "); Serial.println (pow (double__x, double__y) );// x to power of y Serial.print("power of num : "); Serial.println (square (double__x)); // square of x } void loop() { }
结果
cos num = 0.10 absolute value of num = 45.45 floating point modulo =15.25 sine of num = 0.99 square root of num : 6.74 tangent of num : 9.67 exponential value of num : ovf cos num : 1.55 tangent of num : 0.59 arc tangent of num : 3.82 cos num : 1.66 logarithm of num to base 10 : inf power of num : 2065.70