python3解法
质数一定是大于 1 的,并且不能用两个小于它的正整数的乘积来表示。
质因子(或质因数)在数论里是指能整除给定正整数的质数。
根据算术基本定理,不考虑排列顺序的情况下,每个正整数都能够以唯一的方式表示成它的质因数的乘积。
两个没有共同质因子的正整数称为互质。
因为1没有质因子,1与任何正整数(包括1本身)都是互质。只有一个质因子的正整数为质数。
num = int(input()) i = 2 #质因子从2开始遍历 while i **2 <= num and num >= i: #循环写到根号n , 如果一个数是质数,除了1和本身,它的因子就等于自己的根号,当然不算在内 while num % i == 0: #只要能够被整除,说明当前的i是num的一个质因子, num = num // i #num更新 print(i, end=" ") #打印当前的质因子 i = i + 1 #质因子+1 继续判断3...4跳过,因为2是4的因子,..5...sqrt(num)跳出循环。 if num - 1: #经过上述操作num还不等于1 即num本身是质数。 print(num, end=" ")