Python判断质数并显示其因数和计算公式

for n in range(2,10):             #2~9按顺序计算
	flag = 0                      #标记
	for x in range(2,int(n/2)+1):
	                 #用int()强制转换格式,以匹配range函数,计算质数只需算前一半就可以了
		if n%x == 0:
			if not flag:
				print ('[%d] is not prime number'%n)
				flag = 1           #将其标记为非质数
			if x > n//x:           #避免重复输出相同意义的因数算式
				break
			if flag:
				print('    is',x,'*',n//x)
	if not flag:
		print('[%d] is prime number'%n)

输出样式

[2] is prime number
[3] is prime number
[4] is not prime number
    is 2 * 2
[5] is prime number
[6] is not prime number
    is 2 * 3
[7] is prime number
[8] is not prime number
    is 2 * 4
[9] is not prime number
    is 3 * 3
发布了31 篇原创文章 · 获赞 2 · 访问量 6231

猜你喜欢

转载自blog.csdn.net/Yuyao_Xu/article/details/96608425