2 # Take a value and a direction and output a smoothstepped value
3 # Usage: smoothstep [-d digits] [+-] value
5 from math import floor, ceil
7 if len(args) < 2 or ('+' not in args and '-' not in args):
8 print("Usage: smoothstep [-d digits] [+-] value")
14 digits = int(args[i+1])
17 cur = float(args[1].strip('%'))
20 print(int(5*ceil(cur/5 + 1) if cur % 5 else cur + 5))
21 elif cur >= 1 or digits <= 0:
22 print(int(ceil(cur + 1) if cur % 1 else cur + 1))
24 print(.1*ceil(cur/.1 + 1) if cur % .1 else cur + .1)
27 print(int(5*floor(cur/5 - 1) if cur % 5 else cur - 5))
28 elif cur > 1 or digits <= 0:
29 print(int(ceil(cur - 1) if cur % 1 else cur - 1))
31 print(.1*ceil(cur/.1 - 1) if cur % .1 else cur - .1)