aboutsummaryrefslogtreecommitdiffstats
path: root/source/arduino/abs.rst
diff options
context:
space:
mode:
Diffstat (limited to 'source/arduino/abs.rst')
-rw-r--r--source/arduino/abs.rst33
1 files changed, 33 insertions, 0 deletions
diff --git a/source/arduino/abs.rst b/source/arduino/abs.rst
new file mode 100644
index 0000000..5d699ae
--- /dev/null
+++ b/source/arduino/abs.rst
@@ -0,0 +1,33 @@
+.. _arduino-abs:
+
+abs(x)
+======
+
+Description
+-----------
+
+(Macro) computes the absolute value of a number.
+
+Parameters
+----------
+
+**x**: the number
+
+Returns
+-------
+
+**x**: if **x** is greater than or equal to 0.
+
+**-x**: if **x** is less than 0.
+
+Warning
+-------
+
+Because of the way ``abs()`` is implemented, avoid using other
+functions or causing side effects inside the brackets, as it may lead
+to incorrect results ::
+
+ abs(a++); // avoid this - yields incorrect results
+
+ a++; // use this instead -
+ abs(a); // keep other math outside the function