简体   繁体   English

Python 数据结构编程(列表)

[英]Python Programming on Data Structures(list)

A Mersenne number is any number that can be written as 2^p−1 for some p.梅森数是任何可以写成 2^p−1 的数 p。 For example, 3 is a Mersenne number ( 2^2-1 ) as is 31 ( 2^5-1 ).例如,3 是梅森数 (2^2-1),31 (2^5-1) 也是。 We will see later on that it is easy to test if Mersenne numbers are prime.稍后我们将看到,测试梅森数是否为素数很容易。

Write a function that accepts an exponent pp and returns the corresponding Mersenne number.编写一个 function 接受指数 pp 并返回相应的梅森数。

Ans- def mersenne_number(p): m_number =(2**p)-1 Mersenne numbers can only be prime if their exponent, pp, is prime. Ans- def mersenne_number(p): m_number =(2**p)-1 梅森数只有在其指数 pp 为质数时才能为质数。 Make a list of the Mersenne numbers for all primes pp between 3 and 65 (there should be 17 of them).列出 pp 在 3 到 65 之间的所有素数的梅森数(应该有 17 个)。 def is_prime(number): if number <= 1: return False def is_prime(number): 如果 number <= 1: 返回 False

for factor in range(2, number):
    if number % factor == 0:
        return False

return True

def get_primes(n_start, n_end):
 for number in range(n_start, n_end):
   if is_prime(number):
     mersenne_number(number)
 mersennes =get_primes(3,65)   

The next cell shows a dummy solution, a list of 17 sevens.下一个单元格显示了一个虚拟解决方案,即 17 个七人制的列表。 Alter the next cell to make use of the functions you've defined above to create the appropriate list of Mersenne numbers.更改下一个单元格以使用您在上面定义的函数来创建适当的梅森数列表。 SO HOW TO MAKE THE LIST OF MERSENNE NUMBERS???那么如何列出梅森数???

A Mersenne number is any number that can be written as 2^p−1 for some p.梅森数是任何可以写成 2^p−1 的数 p。

def mersenne_number(p):
    return ((2**p)-1)
def mersenne_number(p): return ((2**p)-1) def is_prime(number): if number <= 1: return False for factor in range(2, number): if number % factor == 0: return False return True list_ = [] def get_primes(n_start, n_end): for number in range(n_start, n_end): if is_prime(number): list_.append(mersenne_number(number)) return list_ mersennes =get_primes(3,65)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM