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)

在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,以下是Python代码,可以生成100以内质数: ```python def is_prime(n): if n <= 1: return False for i in range(2, int(n**0.5)+1): if n % i == 0: return False return True primes = [] for i in range(2, 101): if is_prime(i): primes.append(i) print(primes) ``` 这个程序首先定义了一个`is_prime`函,用于判断一个是否质数。然后利用`range`函生成2到100之间的整,逐个检查每个是否质数,如果是,则将其添加到一个列表中。最后,打印出所有的质数列表。 希望这个程序对您有帮助! ### 回答2: 下面是一个使用Python编写的输出100以内质数的程序: ```python def is_prime(num): if num < 2: return False for i in range(2, int(num**0.5)+1): if num % i == 0: return False return True primes = [] for num in range(2, 101): if is_prime(num): primes.append(num) print("100以内质数为:") for prime in primes: print(prime, end=" ") ``` 程序首先定义了一个名为is_prime的函,用于判断一个是否质数。该函从2开始遍历到该的平方根,判断是否存在能整除该的因子,若存在则返回False,否则返回True。 接下来,程序通过循环遍历2到100之间的每个,并调用is_prime函进行判断。如果该质数,则将其添加到一个名为primes的列表中。 最后,程序输出经过筛选后的质数列表。 运行此程序,将会输出结果:100以内质数为: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 ### 回答3: 要用Python编写一个输出100以内质数的程序,可以按照以下步骤进行: 1. 定义一个 `is_prime(num)`,用于判断一个是否质数质数是指只能被1和它本身整除的正整。如果一个字可以被2到它本身-1的任意字整除,则不是质数。 2. 创建一个空的列表 `prime_numbers`,用于存储找到的所有质数。 3. 使用一个循环,从2开始迭代到100。将每个字传递给 `is_prime` 函进行判断。 4. 如果 `is_prime` 函返回 `True`,说明该字是质数,将其添加到 `prime_numbers` 列表中。 5. 循环完成后,打印输出 `prime_numbers` 列表中的所有质数。 下面是代码示例: ```python def is_prime(num): if num < 2: return False for i in range(2, num): if num % i == 0: return False return True prime_numbers = [] for num in range(2, 101): if is_prime(num): prime_numbers.append(num) print(prime_numbers) ``` 运行程序后,会输出100以内的所有质数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值