【发布时间】:2017-05-08 18:13:26
【问题描述】:
我不能使用“/”和循环,我必须除一些数字。 操作数是 32 位的,我不能使用递归。
我想过使用 shr 但它只给我 2^n divison 并且它也不会保存提醒。
有什么想法吗?
【问题讨论】:
-
除法只是重复减法。为什么不能使用除法运算符?
-
@Domi 任何解决方法都可能比常规除法运算符占用更多内存??!
-
@AlexG 那是肯定的......听起来像是一个虚构的要求或借口......
-
除数是编译时已知的常数吗?
-
@Dorni:在这种情况下,您可以只使用magic number method,它只需要乘法、加法和移位。请点击edit 按钮并将来自 cmets 的所有相关信息添加到您的问题中,因为人们对其含糊不清感到沮丧。
标签: c++ c math division divide