This shows you the differences between two versions of the page.
arduino:math:min [2013/02/15 20:45] |
arduino:math:min [2024/02/16 01:04] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ======min(x, y) ====== | ||
+ | |||
+ | ====Description ==== | ||
+ | |||
+ | Calculates the minimum of two numbers. | ||
+ | |||
+ | ====Parameters ==== | ||
+ | |||
+ | x: the first number, any data type | ||
+ | |||
+ | y: the second number, any data type | ||
+ | |||
+ | ====Returns ==== | ||
+ | |||
+ | The smaller of the two numbers. | ||
+ | |||
+ | ====Examples ==== | ||
+ | <code arduino>sensVal = min(sensVal, 100); // assigns sensVal to the smaller of sensVal or 100 | ||
+ | // ensuring that it never gets above 100.</code> | ||
+ | ====Note ==== | ||
+ | Perhaps counter-intuitively, max() is often used to constrain the lower end of a variable's range, while min() is used to constrain the upper end of the range. | ||
+ | |||
+ | |||
+ | ====Warning ==== | ||
+ | Because of the way the min() function is implemented, avoid using other functions inside the brackets, it may lead to incorrect results | ||
+ | |||
+ | <code arduino> | ||
+ | min(a++, 100); // avoid this - yields incorrect results | ||
+ | |||
+ | a++; | ||
+ | min(a, 100); // use this instead - keep other math outside the function | ||
+ | </code> | ||
+ | |||
+ | |||
+ | |||
+ | ====See also ==== | ||
+ | |||
+ | * [[arduino:math:Max]] | ||
+ | * [[arduino:variable scope and qualifiers:Constrain]] | ||
+ | |||
+ | |||
+ | |||
+ | Source: arduino.cc | ||