primes相关内容
我是Python的新手,我想我会尝试通过编写一个函数来找到第n个素数来学习一些技巧,但是我无法使我的代码正常工作.毫无疑问,这是由于我遗漏了一些基本知识,但是我很感谢您在发现错误之处方面的帮助! c=2 n=input("Which prime would you like? ") n=int(n) a=[] l=len(a) while l
..
在Haskell中有很多关于生成质数的主题,但是我认为它们都依赖于'isPrime'函数,如果我们还不知道素数序列,它应该看起来像这样: isPrime k = if k > 1 then null [ x | x
..
我正在尝试将以下测试数字是否为质数的函数转换为测试整数是否为圆形质数的另一函数. 例如. 1193年是圆形素数,自1931年以来,9311和3119都是素数. 因此,我需要旋转整数并测试数字是否为质数.有任何想法吗? 注意:我是Haskell编程的新手 isPrime :: Integer -> Bool isPrime 1 = False isPrime 2 = True isPrim
..
我有一个质数生成器,我很好奇我能基于优化等方法使质数生成器变小又快: from math import sqrt def p(n): if n > 1): if not s[i]: continue
..
注意: 这个问题与使用过滤器和生成器来python中的生成器无穷素数,尽管它们都与Python代码有关,该代码找到了达到给定限制的所有素数. 实际上,核心代码非常简单,但是我很难理解其工作原理.这就是我添加一些调试打印的原因. def _odd_number_generator(): x = 1 while True: x += 2 pr
..
下面的代码用于生成素数pythonic吗? def get_primes(n): primes=[False,False]+[True]*(n-1) next_p=(i for i,j in enumerate(primes) if j) while True: p=next(next_p) yield p primes
..
我正在尝试编写一个生成器函数,用于按如下方式打印质数 def getPrimes(n): prime=True i=2 while(i
..
我需要在Python中使用生成器生成素数.这是我的代码: def genPrimes(): yield 2 x=2 while True: x+=1 for p in genPrimes(): if (x%p)==0: break else:
..
这不是作业,我只是很好奇. INFINITE是这里的关键词. 我希望将其用作for p in primes().我相信这是Haskell中的内置函数. 因此,答案不能像“只做筛子"那样幼稚. 首先,您不知道将消耗多少连续的素数.好吧,假设您一次可以炮制100个.您会使用相同的Sieve方法以及质数频率公式吗? 我更喜欢非并行方法. 谢谢您的阅读(和写作;))!
..
我需要用户输入一个数字并输入与其输入的值最接近的质数.我正在努力检查如何检查输入数字前后的质数.最后一部分是打印如果两个素数与输入的数相距相同的距离,则取较小的值. n = int(input("Enter n: ")) holder1 = n holder2 = n prime = True holder3 = 0 holder4 = 0 for i in range(2,n):
..
我写了一个C程序,它告诉给定的数字是否为质数.但这有一个问题.对于除5的倍数以外的数字,它可以正常工作,但它显示的5的倍数为质数,例如15,25,35,45 ....我找不到错误.我曾尝试将其与互联网上的其他程序进行比较,但找不到错误. #include int primeornot(int a) { int i; for (i = 2; i
..
我需要编写一个程序来输入数字并以以下形式输出其阶乘的素因式分解: 4!=(2^3)*(3^1) 5!=(2^3)*(3^1)*(5^1) 问题是我仍然不知道如何获得该结果. 显然,括号中的每个第一个数字都是升序质数,直到实际阶乘为止.括号中的第二个数字是该数字在阶乘中出现的次数. 我不知道的是例如在5!=(2^3)*(3^1)*(5^1)中,如何在120(5!= 120)中
..
对于Eratosthenes筛(用所有数字组成的数组和标记复合数字的循环实现)是否是动态编程的示例,我有点困惑?有几个朋友告诉我它的实现方式是Bottom Up DP的一个示例,但我很难看到它。究竟是什么子问题,您将如何使用自顶向下/递归实现SoE?谢谢大家。 解决方案 当然,我们可以将Eratosthenes筛作为动态编程的示例。子问题将是所有组合数字。跳过标记的数字是子问题重叠的完美展
..
是否存在用于计算数百万或数十亿质数的高质量校验和的聪明算法?即 动机: 小的素数-最多64位大小-通过使用小的位图筛选潜在因子(最大2 ^ 32-1)和使用第二个位图筛选目标范围内的数字,可以按需筛选每秒数百万的速度。 算法和实现是相当简单和直接的,但是细节在于魔鬼:值趋向于-或超越-遍及内建整数类型的极限,边界情况如果编程没有适当的防御性,那么很多(可以这么说)甚至浮点严格性上
..
我正在尝试将Seq.cache与我使函数返回的素数序列一起使用,该素数序列最多包含N(不包括数字1)。我在弄清楚如何将缓存的序列保持在范围内时遇到了麻烦,但是 let rec primesNot1 n = {2 .. n} |> Seq.filter(fun i-> (primesNot1(i / 2)|> Seq.for_all(fun o-> i%o Se
..
我经常听到在Java中使用 break s被认为是不好的做法,但是在阅读了Stack Overflow上的一些线程之后,我发现不是这样。许多人说这在某些情况下是可以接受的。 在这种情况下,对什么是/不是不好的做法我有些困惑。 对于欧拉计画:问题7,我构建了以下代码。挑战是找到第10001个素数。 int索引= 2,计数= 1,numPrime = 1; 而(true){
..
我正在尝试验证输入的 BigInteger 数字是否是主要数字! 但是,它对于较小的数字(如 13,31 )运行良好,但在 15 的情况下会产生错误;将其声明为素数.我无法弄清楚该错误,可能是隐藏在涉及 binary-search ! 的 squareroot()方法方法中! 请查看代码并帮助我指出错误!!! 呼叫代码:- boolean p=prime(BigInteger
..
您可以使用BigInteger.isProbablePrime()生成加密安全的素数吗?要使他们“安全"有什么确定性? 解决方案 我没有持有加密货币的学位,所以要加一点盐. 您在这里有两个主要的关注领域: 您的素数必须是不可预测的随机数.这意味着您需要使用诸如 您的潜在质数需要合理地确定为质数(我假设您使用的算法依赖于分解的难度).如果您获得了可能的素数,但攻击者很有可能在5
..
我知道这是一个很奇怪的问题,但是我正在尝试获取文件中当前最大质数的副本.以整数形式获取数字非常容易.我只是运行这个. prime = 2**74207281 - 1 大约需要半秒钟,并且效果很好.操作也相当快.将其除以10(不带小数)即可快速移动数字.但是,str(prime)需要很长时间.我像这样重新实现str,发现它每秒处理大约一百位数. while prime > 0:
..
我正在阅读Sedgewick的Rabin-Karb算法.这本书说: 我们使用随机质数Q取尽可能大的值,而 避免溢出 在一读时,我没有注意到 random 的重要性,当我看到在代码中使用long时,我的最初想法是: a)使用Eratosthene的筛子找到适合long 的大质数 或 b)从素数列表中查找任何大于int的足够大的素数,并将其用作常量. 但随后的其余解释说:
..