定义判断丑数的函数:

def is_ugly(num):
    while num % 2 == 0:
        num //= 2
    while num % 3 == 0:
        num //= 3
    while num % 5 == 0:
        num //= 5
    return num == 1

输出$1\sim 100$之间所有的丑数:

count = 0
for i in range(1, 101):
    if is_ugly(i):
        print(i, end=' ')
        count += 1
print('\n一共有', count, '个丑数。')

输出结果为:

1 2 3 4 5 6 8 9 10 12 15 16 18 20 24 25 27 30 32 36 40 45 48 50 54 60 64 72 75 80 81 90 96 100 
一共有 33 个丑数。
我们把只包含因子$2$、$3$和$5$的数成为丑数。例如$6$、$8$都是丑数但$14$不是因为它包含因子$7$。习惯上我们把$1$当作是第一个丑数。先定义一个判断丑数的函数利用它输出$1sim 100$之间所有的丑数并统计出个数。

原文地址: https://www.cveoy.top/t/topic/ggPu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录