《python语言程序设计》第5章循环 第35题,完整数 解题,先从求正因子还是正因数下手 21297

在这里插入图片描述

2022-8-11

昨天以6为数求出了6的正因子,今天早上想明白。为什么变成1到10000之间就不可以。因为我的程序只是解答6这一个数,而不是解答1到10000之间。
我觉得方向是对的,还应该求因子。只不过如何求从1到10000之间的

这相当于复习了5.18题求素因子的感觉
我发现昨天之所以能求出6的因子是1,2,3,而到了其他数无法进行时,原来只是循环中数字正常变化造成的错觉

以下是昨天认为对的程序

number = 6
div_num = 1
while number % div_num == 0:
    number /= div_num
     print(f"div_num is {div_num}")
    div_num += 1

草稿

number = 1
div_num = 1
while number <= 28:
    print(f"number is {number}")
    if number % div_num == 0:
        div_num += 1
        number += 1
        print(div_num)


在这里插入图片描述

继续尝试,现在就像学英语写的跟想表达的是一样。但是别人看不懂

number = 28
div_num = 1
while number % div_num == 0:
    number //= div_num
    print(f"out div {div_num}")
    print(f"number is {number}")

    div_num += 1
    while number % div_num != 0:
        div_num += 1

经过努力又进了一步。

28

在这里插入图片描述

10000 的

在这里插入图片描述

但二者共同的问题是keyboardInterrupt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

电饭叔

谢谢各位兄弟们的关注,谢谢破费

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值