bcrypt.ctf/bcrypter/lib/math.py

16 lines
417 B
Python

'''
Implements numeric range clamping (idk why its not in the stdlib...)
NOTE: the upper and lower bounds for clamping are inclusive
'''
def clamp(x: int, min: int, max: int) -> int:
if x < min:
return min
elif x > max:
return max
return x
def clamp_min(x: int, min: int) -> int:
return x if x > min else min
def clamp_max(x: int, max: int) -> int:
return x if x < max else max