【问题标题】:Number of steps to reduce to zero减少到零的步数
【发布时间】:2022-08-04 15:47:04
【问题描述】:

您好,我有这个步骤问题,我想看看我可以在哪里改进我的代码,以获得将任何整数减少到零所需的步骤数。我相信你们都知道这个过程,但只是为了澄清......如果数字是偶数,我们除以2,加一个步骤,如果数字是奇数我们减去,再加一个步骤......有人可以吗让我知道我错过了什么?

def steps_to_zero(int):
    step = 0
    while (abs(int) > 0):
        if int % 2 == 0:
            int / 2
        else:
            int - 1
        step += 1
    return step
  • 你为什么用[javascript]标记这个
  • int - 1 只是计算该值。如果你不将结果存储在某个地方,那是没用的

标签: python


【解决方案1】:

当你写出像x / 2 这样的一行时,Python 会计算那个除法的结果。但是,您并没有保存结果师的任何地方!您需要对step += 1 做同样的事情,相当于step = step + 1

def steps_to_zero(int):
    step = 0
    while (abs(int) > 0):
        if int % 2 == 0:
            int /= 2
        else:
            int -= 1
        step += 1
    return step

【讨论】:

    猜你喜欢
    • 2019-04-27
    • 2017-01-28
    • 1970-01-01
    • 2021-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 2016-06-28
    相关资源
    最近更新 更多