程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何编写一个函数让输出为 range(x,y) 中的所有素数大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何编写一个函数让输出为 range(x,y) 中的所有素数?

开发过程中遇到如何编写一个函数让输出为 range(x,y) 中的所有素数的问题如何解决?下面主要结合日常开发的经验,给出你关于如何编写一个函数让输出为 range(x,y) 中的所有素数的解决方法建议,希望对你解决如何编写一个函数让输出为 range(x,y) 中的所有素数有所启发或帮助;

我成功创建了一个确定素数的代码,是这样的

def isprime(num):
  for x in range(2,num):
    if num%x == 0:
      return false
      break
    else:
      return True
dash = "-------------"
print(dash)
while 1:
 no = int(input("Enter number to determine: "))
 print(isprime(no))

然后,我决定编写一个函数,让输出为范围(x,y)内的所有素数。 所以我试试,

def primein(minNum,maxnum):
  for num in range(minNum,maxnum):    
    for x in range(2,num):              
       if num % x == 0: #DefinitelyNotPrime
         return  True
       else:
         return false
    if True:
      print(num)
       
a = int(input("From: "))
b = int(input("To: "))
print(primein(a,b))

我也试试,

def primein(minNum,maxnum):
    fa = 0
    for x in range(2,num):      
       if num % x == 0: #DefinitelyNotPrime
         fa = 0
       else:
         fa = 1
    if fa == 1:
      print(num)
       
a = int(input("From: "))
b = int(input("To: "))
primein(a,b)

而且它也不起作用。 谁能帮帮我,我现在很困惑。

解决方法

有很多方法,但最有指导意义的一种可能是组合你的函数!如果你有一个函数可以告诉你一个数是否是素数,使用它

def is_prime(num):
    for n in range(2,int(math.sqrt(num))+1):
        if num % n == 0:
            return false
    return True

def find_primes_between(min_,max_):
    primes = []
    for candidate in range(min_,max_+1):
        if is_prime(candidatE):
            primes.append(candidatE)
    return primes

超级效率低下,而且说计算机科学的整个研究可以被描述为“快速找到素数”确实非常准确,但它有效并教你如何在实际应用中使用函数。

,

一旦确定了范围内第一个数字的质数(或不是),就从 primein 返回(真或假)。因此,您永远不会进行打印(也不会测试第二个数字)。

像每个程序员一样重复使用完善的代码,即在 isprime 中调用您的函数 primein 以确定素数。除了完成这项工作外,您还有机会自行加速 isprime 函数,自动为 primein

带来好处

大佬总结

以上是大佬教程为你收集整理的如何编写一个函数让输出为 range(x,y) 中的所有素数全部内容,希望文章能够帮你解决如何编写一个函数让输出为 range(x,y) 中的所有素数所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。