实现一个函数,判断一个数是不是素数,并打印100~200内的素数

刚开始看得很懵,但慢慢写就有思路,感觉还是有很多需要改进的地方

首先初始化一个变量n,需要输入,创建一个is_prime函数,不需要返回值,传参

在函数部分进行循环,2~n中间没有n可模为0的便是素数,是素数不打印,不是素数就打印

利用这个函数实现100~200素数的打印

实现的结果如下:

这就是我实现该函数的过程,并用其打印100~200内素数的过程

各位大神走过路过点个赞,有什么不足请多多指导

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 实现一个函数判断一个是不是素数素数是指只能被1和本身整除的正整。因此,判断一个是不是素数,只需要从2到这个的平方根之间的所有整去除,如果都不能整除,则该素数。 代码如下: ```python def is_prime(num): if num < 2: return False for i in range(2, int(num ** .5) + 1): if num % i == : return False return True ``` 利用上面实现函数打印100200之间的素数: ```python for i in range(100, 201): if is_prime(i): print(i) ``` 输出结果为: ``` 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 ``` ### 回答2: 判断一个是不是素数,需要知道什么是素数素数指在大于1的自然中,除了1和本身,没有其他因。比如2、3、5、7等就是素数,而4、6、8等就不是素数实现一个判断素数函数可以采用如下的方法: 1. 如果小于2,返回False 2. 如果大于2并且能被2整除,返回False 3. 从3开始,如果能被3到该的平方根之间的奇整除,返回False 4. 其他情况返回True 代码实现如下: ```python import math def is_prime(n): if n < 2: return False elif n == 2: return True elif n % 2 == 0: return False else: for i in range(3, int(math.sqrt(n))+1, 2): if n % i == 0: return False return True ``` 利用上面实现函数打印100200之间的素数可以采用如下的方法: ```python for i in range(100, 201): if is_prime(i): print(i, end=" ") ``` 上述代码使用了range函数生成100200之间的,并且使用is_prime函数判断每个是否为素数,是的话打印出来。这样就可以得到100200之间的素数。 ### 回答3: 判断一个是不是素数,可以采用试除法。即对于一个n,从2到n-1依次去除n,若都无法整除,则n是素数。 以下是实现一个判断素数函数Python代码: ```python def is_prime(num): if num < 2: #小于2的都不是素数 return False for i in range(2, int(num ** 0.5) + 1): if num % i == 0: return False return True ``` 注解:本函数中,使用了Python的平方根函数sqrt(),代码中使用的是它的等价形式,即对进行了转换。sqrt(num)可以换成num ** 0.5。同时,循环的上限可以限制在num的平方根范围内,大大减少了判断的时间。 接着,利用is_prime()函数,我们可以打印出100200之间的素数。Python代码如下: ```python start = 100 end = 200 for num in range(start, end + 1): if is_prime(num): print(num, end=" ") ``` 注解:本代码中,使用了Python的 range(start, end) 函数,其中起始值为 start,终止值为 end - 1。同时,在每个素数后面加了一个空格,便于观察。 总之,判断素数是一种常用的问题,也是编程入门的必考题之一。学会了判断素数的方法并进行实际编码操作,会对编程入门有很大的帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值