首页 > 解决方案 > 坚持这个高中编码活动

问题描述

我被困在一项活动上(虽然这是一项小型活动,但我需要每天完成五个)。这只是保存一个数字并删除其他所有内容。

这是指令:

  1. “项链问题”。项链问题从两个个位数开始。下一个数字是通过将前两个数字相加并仅保存一位数来获得的。重复这个过程,直到“项链”通过返回到原来的两个数字而闭合。例如,如果起始数字是 1 和 8,则需要十二步才能闭合“项链”。
    示例 1, 8 -> 1 8 9 7 6 3 9 2 1 3 4 7 1 8 <- 14 步
    您的程序将显示起始编号、结束编号、步数和整个“项链”。

这是我现在的代码:

start_number = input('Start number: ')
end_number = input('Ending number: ')

def necklace (start_number, end_number):
    while start_number != end_number
        start_number = start_number + end_number
        i += 1
        if start_number == end_number:
            break
        
print start_number
print end_number
print i

标签: pythonfunctionloops

解决方案


要在不泄露整个问题的情况下回答问题:

您可以通过执行模 10 运算来获得数字的个位。例如:52 % 10 = 2

这适用于任意位数,因此 5842068 % 10 将等于 8。

更多关于模数的信息在这里


推荐阅读