玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python 100例 > 正文内容

Python分解质因数,编程练习题实例十四

本文是关于Python分解质因数的练习。

什么是分解质因数?我们来百度一下:把一个合数分解成若干个质因数的乘积的形式,即求质因数的过程叫做分解质因数。

Python练习题问题如下:
要求:将一个正整数分解质因数;例如您输入90,分解打印90=2*3*3*5。

Python解题思路分析:
这道题需要分三部分来分解,具体分解说明如下。
1、首先当这个质数恰等于n的情况下,则说明分解质因数的过程已经结束,打印出即可。
2、如果遇到n<>k,但n能被k整除的情况,则应打印出k的值。同时用n除以k的商,作为新的正整数你n,之后再重复执行第一步的操作。
3、如果n不能被k整除时,那么用k+1作为k的值,再来重复执行第一步的操作系统。
数学不灵光的童鞋,真是很难解哦。

Python分解质因数,编程练习题实例十四,源代码如下:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

def reduceNum(n):
    print '{} = '.format(n),
    if not isinstance(n, int) or n <= 0 :
        print 'iplaypy.com请输入一个正确的数字 !'
        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)

Python分解质因数输出如果如下图:
python分解质因数习题

玩蛇网文章,转载请注明出处和文章网址:http://www.iplaypy.com/python-100/11056.html [复制]



我要小额赞助,鼓励作者写出更好的教程↓↓↓

玩蛇网Python QQ群,欢迎加入: ① 279974227 玩蛇网Python新手群
修订日期:2017年02月16日 - 16时47分32秒 发布自玩蛇网

我要分享到:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules