按照你的要求编写的Python程序如下
import mathfor i in range(100,1000):
for j in range (2,int(mathsqrt(i))+1):
if i%j==0:
break;
else:
if (i%10+i//10%10)%10==i//100:
print(i)
源代码(注意源代码的缩进)
质数又称素数,指一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。下面是求质数的程序,例如输入15,会输出2,3,5,7,11,13共6个15以内的质数。可以拷到vscode 或者pycharm里面试试。
import math
number = int(input("请输入一个数值: "))
list1 = []
# 如果用户输入的数字大于1
if number > 1:
for i in range(number+1):
# 进行判断
for j in range(2, i):
if (i % j) == 0:
break
else:
if i == 0 or i == 1:
pass
else:
list1append(i)
else:
print("小于或者等于1的数值不是质数")
print("{}以内的数值中是质数的有{},共{}个"format(number,list1,len(list1)))
使用while循环和break:
from math import sqrt
j =2
whilej <=100:
i =2
k = sqrt(j)
while(i<=k):
ifj%i ==0:break
i = i+1
if(i > k):
printj,
j+=1
使用for循环和break:
frommathimportsqrt
foriinrange(2,101):
flag =True
k =int(sqrt(i))
forjinrange(2,k+1):
ifi % j ==0:
flag =0
break
if(flag):
printi,
定义函数:
frommathimportsqrt
defisprime(x):
ifx ==1:
returnFalse
k =int(sqrt(x))
forjinrange(2,k+1):
ifi % j ==0:
returnFalse
returnTrue
foriinrange(1,101):
ifisprime(i):
printi,
python求100到200素数的程序代码:
sushu=[]
for i in range(100,201):
for j in range(2,i):
if i%j==0:
break
if i==j+1:
sushuappend(i)
print(sushu)
# 求100-200之间的所有素数
primes = []
for i in range(100,201):
for j in range(2,int(i(1/2))+1):
if i % j == 0:
break
else:
primes += [i]
print(primes)
程序缩进如图所示
以上就是关于用PYTHON编写一个小程序,输出所有满足条件的素数全部的内容,包括:用PYTHON编写一个小程序,输出所有满足条件的素数、在python中质数如何表示、Python输出2-100中的所有素数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)