无涯教程-Arduino - 数学库(Math)

182 阅读1分钟

Arduino Math库(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) ); //返回 x 的余弦 Serial.print("absolute value of num="); Serial.println (fabs (double__x) ); //浮点数的绝对值 Serial.print("floating point modulo="); Serial.println (fmod (double__x, double__y)); //浮点模数 Serial.print("sine of num="); Serial.println (sin (double__x) ) ;//返回 x 的正弦值 Serial.print("square root of num : "); Serial.println ( sqrt (double__x) );//返回 x 的平方根 Serial.print("tangent of num : "); Serial.println ( tan (double__x) ); //返回 x 的正切 Serial.print("exponential value of num : "); Serial.println ( exp (double__x) ); //函数返回 x 的指数值。 Serial.print("cos num : ");

Serial.println (atan (double__x) ); //x 的反正切 Serial.print("tangent of num : "); Serial.println (atan2 (double__y, double__x) );//y/x 的反正切 Serial.print("arc tangent of num : "); Serial.println (log (double__x) ) ; //x 的自然对数 Serial.print("cos num : "); Serial.println ( log10 (double__x)); //x 以 10 为底的对数。 Serial.print("logarithm of num to base 10 : "); Serial.println (pow (double__x, double__y) );//x 的 y 次方 Serial.print("power of num : "); Serial.println (square (double__x)); //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

参考链接

www.learnfk.com/arduino/ard…