boost::algorithm::clamp() in C++ library
The clamp() function in C++ boost library is found under the header âboost/algorithm/clamp.hppâ contains two functions for âclampingâ a value between a pair of boundary values.
Syntax:
const T& clamp ( const T& val, const T& lo, const T& hi ) or const T& clamp ( const T& value, const T& low, const T& high, Pred p )
Parameters: The function accepts parameters as described below:
- value: This specifies the value compared to.
- low: This specifies the lower range.
- high: This specifies the higher range.
- p: This specifies the predicate function.
- It returns low if value is less than low.
- It returns high if high is greater than value.
- In all other cases, it returns value.
Return Value: The function returns three values as described below:
Program-1:
// C++ program to implement the // above mentioned function #include <bits/stdc++.h> #include <boost/algorithm/clamp.hpp> using namespace std; // Drivers code int main() { int value = 5; int low = 10, high = 20; // Function used int ans = boost::algorithm::clamp(value, low, high); cout << ans; return 0; } |
Output:
10
Program-2:
// C++ program to implement the // above mentioned function #include <bits/stdc++.h> #include <boost/algorithm/clamp.hpp> using namespace std; // Drivers code int main() { int value = 25; int low = 10, high = 20; // Function used int ans = boost::algorithm::clamp(value, low, high); cout << ans; return 0; } |
Output:
20
Program-3:
// C++ program to implement the // above mentioned function #include <bits/stdc++.h> #include <boost/algorithm/clamp.hpp> using namespace std; // Drivers code int main() { int value = 15; int low = 10, high = 20; // Function used int ans = boost::algorithm::clamp(value, low, high); cout << ans; return 0; } |
Output:
15
Reference: https://www.boost.org/doc/libs/1_70_0/libs/algorithm/doc/html/the_boost_algorithm_library/CXX14/mismatch.html
Contact Us