质数
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。
如:2,3,5,7。。。
判断一个数是否为质数
range(2, n)
:范围在2~n(不包括n)之间- 思路:
- 质数从2开始
- 对于一个数,它只能被自己整除:则
n % i == 0
,因为i
从2
开始到n-1
,n
能够被i
整除则表明不是质数
n = 5
for i in range(2, n):
if n % i == 0:
print("%d不是质数"%n)
break
else:
# 循环中没有找到元素
print("%d是质数"%n)
通过定义函数,然后输入一个数来判断其是否为质数
def if_zhishu(n):
if n == 2:
print("%d是质数"%n)
else:
for i in range(2, n):
if n % i == 0:
print("%d不是质数"%n,',', n,'等于', x, '×', n//x)
break
else:
print("%d是质数"%n)
number = int(input("请输入大于等于2的数字,判断是否为质数:"))
if_zhishu(number)
输出100以内的质数
for n in range(2, 100):
for x in range(2, n):
if n % x == 0:
break
else:
print(n, end=" ")
这里更进一步,如果不是质数,给出原因(范围2~10之间)
for n in range(2, 10):
for x in range(2, n):
if n % x == 0:
print("%d不是质数"%n,',', n,'等于', x, '×', n//x)
break
else:
print("%d是质数"%n)