美文网首页
Python 编程练习013:分解质数

Python 编程练习013:分解质数

作者: Yang_6234 | 来源:发表于2020-05-04 09:08 被阅读0次

题目

将一个正整数分解质因数。例如:输入90,打印出90=233*5。
对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
程序源代码:
def reduceNum(n):
    print '{} = '.format(n),
    if not isinstance(n, int) or n <= 0 :
        print '请输入一个正确的数字 !'
        exit(0)
    elif n in [1] :
        print '{}'.format(n)
    while n not in [1] : # 循环保证递归
        for index in xrange(2, n + 1) :
            if n % index == 0:
                n /= index # n 等于 n/index
                if n == 1: 
                    print index 
                else : # index 一定是素数
                    print '{} *'.format(index),
                break
reduceNum(90)
reduceNum(100)
以上实例输出结果为:

90 = 2 * 3 * 3 * 5
100 = 2 * 2 * 5 * 5

相关文章

  • Python 编程练习013:分解质数

    题目 将一个正整数分解质因数。例如:输入90,打印出90=233*5。 对n进行分解质因数,应先找到一个最小的质数...

  • 用python判断质数及其分解因数

    质数判断及其分解 楼主最近学习一小段时间python,在舍友的好奇下,写了一个python判断质数及其分解的代码 ...

  • Python编程练习043:质数判断

    一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了...

  • 分解质因数

    问题描述 任何一个合数都可以写成几个质数相乘的形式,这几个质数叫做这个合数的质因数。编程实现分解质因数。 测试样例...

  • 质数刷题

    质数距离如何快速求解一个区间的所有质数。阶乘分解快速对整个阶乘质因数分解。判定1e18的质数直接使用Miller-...

  • 三升四数学(5)

    五,分解质因数 1.复习:质数与合数的概念,50以内,100以内的质数 2.把一个合数分解成若干个质数的乘积(小的...

  • 第五周学习计划

    本周学习python相关内容,练习sql题,练习python编程题,尽量跟进度Õ_Õ

  • 质数分解2019

    把2019分成若干个素数相加,求有多少种分法?元素完全相同的算同一种方法,比如2+2017=2019和2017+2...

  • 编程的分解思维

    之前参加了自学python的训练营,14天下来,感触最深的却不是编程的进步,而是编程里把任务分解的思维。 编程其实...

  • 编程与数学3 编程找出200以内所有的质数

    利用PHP编程,找出1至20(任意整数区间)所有的质数 题 找出给定范围的所有质数 编程思考 这道题,我用PHP编...

网友评论

      本文标题:Python 编程练习013:分解质数

      本文链接:https://www.haomeiwen.com/subject/pgceghtx.html