Python:判断一个数是否为质数或者输出100以内的质数

质数

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。
如:2,3,5,7。。。


判断一个数是否为质数

  • range(2, n):范围在2~n(不包括n)之间
  • 思路:
    1. 质数从2开始
    2. 对于一个数,它只能被自己整除:则n % i == 0 ,因为i2开始到n-1n能够被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)

Python:判断一个数是否为质数或者输出100以内的质数_第1张图片

你可能感兴趣的:(python学习,python,开发语言)