最近有一个学弟问我一些求解质因数的问题,帮他解决问题的同时自己也试着写了几个差不多效果的脚本,有很多不同的思路,以下是相关脚本。
n = int(input("input number: ")) # 输入数字 fac = [] # 定义一个列表存放因子 for i in range(2, n): # 这里的逻辑和你一样 if n % i == 0: fac.append(i) # 如果是因子就放进去 continue else: pass if len(fac) == 0: # 判断一下 print("prime!") else: print(fac)
这个是将所有的因数都放在一个列表里的做法。
def isprime(n): # 一个判断质数的方法,如果是质数,就返回这个数,如果不是质数,就什么也不返回 for i in range(2, n): if n % i == 0: break else: return n num = int(input("input number: ")) # 输入一个数,存为num i = 1 # 设置哨兵变量为1 if num >= 2: # 首先判断num是否符合判断条件 while i <= num: # 注意这里一定要用while语句循环,因为哨兵变量最后要被更新 i += 1 # i = i + 1 尝试遍历从1到num的所有数 if num % i == 0: # 如果i是他的因子 print(isprime(i)) # 先看这个因子是不是质数,是就输出 num = num / i # 此时更新一下num # print("num is %s now!" % num) # 可以看看现在num是多少 i = 1 # 记得把哨兵重新设置为1,这样循环才会更新,我一开始用for语句循环,发现没法从头开始循环 pass # 继续 else: pass # 若i不是num的因子,跳过 else: print("error") # 不符合条件,就输出错误
这是质因数分解的做法。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 邓丽君.1983-淡淡幽情(2022环球MQA-UHQCD限量版)【环球】【WAV+CUE】
- 试音天碟《专业测试第一天碟》经典天碟精选[WAV分轨][1G]
- 试音典范 《情惹发烧情HQCD》人声发烧极品 [WAV+CUE][1G]
- 世界顶级汽车音响试音王《幸福在路上》[低速原抓WAV+CUE][1.1G]
- 老头杯第二届什么时候开始 英雄联盟第二届老头杯开赛时间介绍
- 老头杯第二届什么时候结束 英雄联盟第二届老头杯结束时间介绍
- 老头杯第二届规则是什么 英雄联盟老头杯第二届规则介绍
- 王崴-爵士听堂.蓝色波萨(HQCD)[WAV+CUE]
- 群星《欧美动听情歌·柔情第5季》2CD【DTS-WAV分轨】
- [极品珍藏]德意志进行曲集卡拉扬SACD[WAV+CUE]
- 前暴雪制作人呼吁反击DEI 玩家:夺回文化!
- 腾讯证实子公司Sharkmob大规模裁员:整个市场很低迷
- 荣耀加冕 问鼎冠军 中国代表队获第四届东亚电竞锦标赛团体总冠军
- 污甩乐队.2024-Let.the.dirt.left【摩登天空】【FLAC分轨】
- 杜德伟.1994-ALL.FOR.YOU(英)【滚石】【WAV+CUE】