constrain()

名称

constrain()

説明

数値をある範囲に制限する。

書式

constrain(x, a, b);

引数

x範囲を制限したい数値(任意の型)
a範囲の下限値(任意の型)
b範囲の上限値(任意の型)

戻り値

xが、aとbとの間にあるときはx、xがaより小さいときはa、xがbより大きいときはbを返す。

使用例

以下のコードはセンサの値を10から150の間に制限する。

1
sensVal = constrain(sensVal, 10, 150);  // limits range of sensor values to between 10 and 150

注意

constrain()はマクロとして実装されているため、引数に他の関数を使わないようにすること。そのような使い方をすると、意図しない結果になることがある。

以下のコードは誤った結果となる。

1
int constrainedInput = constrain(Serial.parseInt(), minimumValue, maximumValue);   // avoid this

以下のようにすること。

1
2
int input = Serial.parseInt();  // keep other operations outside the constrain function
int constrainedInput = constrain(input, minimumValue, maximumValue);

参照

言語 abs()

言語 map()

言語 max()

言語 min()

言語 pow()

言語 sq()

言語 sqrt()

オリジナルのページ

https://www.arduino.cc/reference/en/language/functions/math/constrain/

Last Revision: 2022/09/07

実装の解析

まだ解析していません。

最終更新日

January 4, 2024

inserted by FC2 system