主要内容是校设课程的习题和课外学习的一些习题。
欢迎关注 『Python习题』 系列,持续更新中
欢迎关注 『Python习题』 系列,持续更新中
题目
描述
写一个函数isPrime(n)用于判断一个数字n是不是素数,用户输入一个正整数,在一行内输出不大于该数的所有素数,各数后面用一个空格分隔。
输入格式
输入一个正整数
输出格式
不大于该数的所有素数,各数后面用一个空格分隔。
输入输出示例
输入
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
思路
原来的参考答案判断素数没有使用int(math.sqrt(n))+1
优化运算(但是无法通过所有测试点的原因不是这个,是区间右开)
题目要求:输出不大于
该数的所有素数
所以range时要+1
代码
import math
def isPrime(n): #判断素数的函数
if n < 2:
return False #0和1不是素数
for i in range(2, int(math.sqrt(n))+1):
if n % i == 0:
return False
break
else:
return True
num = int(input()) #接收用户输入并转成整数
for i in range(num+1):
if isPrime(i):
print(i,end=' ') #在同一行内输出结果,不换行,中间用空格分隔
实现效果
总结
大家喜欢的话,给个👍,点个关注!给大家分享更多有趣好玩的Python习题!
版权声明:
发现你走远了@mzh原创作品,转载必须标注原文链接
Copyright 2022 mzh
Crated:2022-3-1
欢迎关注 『Python习题』 系列,持续更新中
欢迎关注 『Python习题』 系列,持续更新中
【更多内容敬请期待】