hveagle 发表于 2023-12-9 11:50:02

欧拉计划0005

本帖最后由 hveagle 于 2023-12-9 11:51 编辑

欧拉计划0005

最小公倍数

<<< 欧拉计划0004

2520是最小的能够被1到10整除的正数。

最小的能够被1到20整除的正数是多少?

进入淘帖订阅

小师妹讲解{:10_335:} :

在本帖发布之前已录制到第28道,具体数字看到本贴时确定

FishC 发表于 2023-12-9 11:50:36

欧拉计划的第5题要求我们找出1到20这些数字的最小公倍数。所谓最小公倍数,就是能够整除这些数字的最小正整数。

我们可以编写一个函数,来计算两个数的最小公倍数。然后,我们可以使用这个函数来计算1到20这些数字的最小公倍数。

下面是一个示例代码:

# 计算两个数的最大公约数
def gcd(a, b):
    while b != 0:
      a, b = b, a % b
    return a

# 计算两个数的最小公倍数
def lcm(a, b):
    return a * b // gcd(a, b)

# 计算1到n之间数字的最小公倍数
def smallest_multiple(n):
    result = 1
    for i in range(1, n+1):
      result = lcm(result, i)
    return result

n = 20
print(smallest_multiple(n))

运行这段代码,输出结果为:232792560,即1到20这些数字的最小公倍数。

这个方法的思路是从小到大依次计算每个数字和当前最小公倍数的最小公倍数,然后更新最小公倍数。这样,当循环结束时,我们就得到了1到20这些数字的最小公倍数。

希望能对你有所帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

tommyyu 发表于 2023-12-9 11:56:58

{:10_277:}这和搬运一遍https://fishc.com.cn/forum-375-1.html有什么区别

yinda_peng 发表于 2023-12-9 13:31:21

论坛不是有欧拉计划了吗

tommyyu 发表于 2023-12-9 16:06:52

yinda_peng 发表于 2023-12-9 13:31
论坛不是有欧拉计划了吗

他把这个计划给重新都在发一遍{:10_277:}

hveagle 发表于 2023-12-9 18:18:18

tommyyu 发表于 2023-12-9 16:06
他把这个计划给重新都在发一遍

没有

tommyyu 发表于 2023-12-9 18:45:32

hveagle 发表于 2023-12-9 18:18
没有

那是什么{:10_277:}

zhangjinxuan 发表于 2023-12-15 17:02:28

本帖最后由 zhangjinxuan 于 2023-12-15 17:07 编辑

tommyyu 发表于 2023-12-9 16:06
他把这个计划给重新都在发一遍

既然这个东西能顺利地进行下去,那就不要再问了。
——沃兹基硕德

我也好奇,但应该不是“搬运”,但是这个又不给出代码解法,就特别奇怪。

页: [1]
查看完整版本: 欧拉计划0005