zoukankan      html  css  js  c++  java
  • Python 素数判断;以及默尼森数

    1. 素数/质数

    只能被2或者本身整除的正整数。

    2. 默尼森数

    P是素数且M也是素数,并且满足等式M=2^P-1,则称M为默尼森数。

    编程小要求: 输出前5个默尼森数

    1)最外层循环找素数

         中间层循环对已有素数表找默尼森数

         内层循环对某个素数检查M=2^P-1

     1 # -*- coding: cp936 -*-
     2 from math import sqrt
     3 
     4 # 素数初始化
     5 p=[]
     6 # 默尼森数表初始化
     7 mns=[]
     8 
     9 def is_sushu(x):
    10     if x <= 1:    
    11         return False   
    12 
    13     for i in range(2, int(sqrt(x)) + 1):    
    14         if x % i == 0:    
    15             return False   
    16     return True   
    17 
    18 for j in range(1,10000):    #j 循环找素数
    19     if is_sushu(j)==True:
    20         p.append(j)
    21 
    22 k=len(p)
    23 
    24 for k1 in range(1,k): #k1 循环已有素数表
    25     if len(mns)==5:
    26         break
    27             
    28     for k2 in range(0,k1):
    29         if len(mns)==5:
    30             break
    31                 
    32         if p[k1]==2**p[k2]-1:
    33             mns.append(p[k1])
    34 
    35         else: 
    36             continue
    37     
    38 #print len(p)
    39 print mns
    写死了素数;再找默尼森数

     2)

  • 相关阅读:
    HTML5画的简单时钟
    JS操作网页中的iframe
    JS垂直落体回弹原理
    JS回弹原理高级
    待续...
    JS拖拽面向对象拖拽继承
    JS简单回弹原理
    c++快速排序(从大到小greater/从小到大less)
    搜索素数环
    搜索组合数
  • 原文地址:https://www.cnblogs.com/skyEva/p/5421348.html
Copyright © 2011-2022 走看看