**Reference** Language | Libraries | Comparison | Changes

The AVR math library, which is included in your sketch by using the line

#include <math.h> // (no semicolon)

includes a great number of mathematical functions. This is why you graduated from the Basic Stamp.

The Atmega8 chip, which is now dated, but still supported, does not have enough memory to be able use the math.h library so you will probably need to update to an Atmega168 if you wish to use any of these functions.

The full docs for math.h may be found here

` Someone email a small example to pbadger@verizon.net and I'll put it in here `

This is just a partial list - check the docs for more obscure functions

double cos(double __x) // returns cosine of x in radians

double fabs (double __x) // absolute value of a float

double fmod (double __x, double __y) // floating point modulo

double modf (double __value, double *__iptr) //breaks the argument value into integral and fractional parts

double sin (double __x) // returns sine of x in radians

double sqrt (double __x) // returns square root of x in radians

double tan (double __x) // returns tangent of x in radians

double exp (double __x) // function returns the exponential value of x.

double atan (double __x) // arc tangent of x

double atan2 (double __y, double __x) // arc tangent of y/x

double log (double __x) // natural logarithm of x

double log10 (double __x) //logarithm of x to base 10.

double pow (double __x, double __y) // x to power of y

int isnan (double __x) // returns 1 if "not a number"

int isinf (double __x) //returns 1 if the argument x is positive or negative infinity

double square (double __x) // square of x

double fabs (double __x) // absolute value of a float

double fmod (double __x, double __y) // floating point modulo

double modf (double __value, double *__iptr) //breaks the argument value into integral and fractional parts

double sin (double __x) // returns sine of x in radians

double sqrt (double __x) // returns square root of x in radians

double tan (double __x) // returns tangent of x in radians

double exp (double __x) // function returns the exponential value of x.

double atan (double __x) // arc tangent of x

double atan2 (double __y, double __x) // arc tangent of y/x

double log (double __x) // natural logarithm of x

double log10 (double __x) //logarithm of x to base 10.

double pow (double __x, double __y) // x to power of y

int isnan (double __x) // returns 1 if "not a number"

int isinf (double __x) //returns 1 if the argument x is positive or negative infinity

double square (double __x) // square of x

*Corrections, suggestions, and new documentation should be posted to the Forum.*

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.