题解 | #质数因子#
质数因子
http://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
接上文,开方的思路:如果一个数不是素数是合数, 那么一定可以由两个自然数相乘得到, 其中一个大于或等于它的平方根,一个小于或等于它的平方根。并且成对出现。
num = int(input())
def getprime(n):
    i = 2
    while i * i <= n:
        while n % i == 0:#比如输入49,内循环是会执行两次!
            n = n // i
            print(i, end=" ")
        i = i + 1
    if n - 1: #判断输入是不是质数,质数只有1和自身的乘积等于这个数
        print(n, end=" ")
getprime(num)

 查看12道真题和解析
查看12道真题和解析