ceil(2.12) = 3
是否可以仅使用几个可用的算术运算来计算上限(例如):* - + /
即没有强制转换和其他软件技巧,只使用除法/mul/sub/addition 和比较运算符?
说明:
- 复杂性很重要,但我很高兴听到任何解决方案。
- 模数不可用。
- 价值观是积极的。
- 运算不是四舍五入的。
- 我所说的软件技巧是指 mod、位级操作等。
基本上我有一个系统,它允许将表达式分配给变量,其中表达式只能包含上述 4 个算术运算、比较和循环。例如
var x = if (A * (1.434 + 0.4325)) > 54.4534) 则为 45.6 否则为 43.435
我想做
变量 x = CEIL(...)