您的位置:首页 > 编程语言 > Python开发

Python 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

2017-10-15 20:45 471 查看
#!/usr/bin/python
# coding=utf-8

def reduceNum(n):
print '{} = '.format(n),  # {}可以代替%,使用 format 函数格式化字符,到时答应

出来就是 n=... ,具体可以搜{}的用法
if not isinstance(n, int) or n <= 0:         #如果 n的类型不是整数或者不是正数
print '请输入一个正确的数字 !'
exit(0)                                  #无错误退出程序
elif n == 1:                                 #n is in [1]  此处其实就是

#n==1 的意思
print '1',
while n <> 1:                                #n is not in [1] 此处其实就是

# n!==1 的意思 循环保证递归
for index in range(2, n + 1):
if n % index == 0:
n = n/index                      #n 等于 n/index
if n == 1:
print index                   #用来输出最后一位数字
else:                            #index 一定是素数
print '{} *'.format(index),
break                       #跳出整个for的循环,

#开始进行下一轮n被for循环的相除
#reduceNum(0)
#reduceNum(1)
#reduceNum(101)
reduceNum(90)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python
相关文章推荐