Ledger Nano X - The secure hardware wallet
SHARE
TWEET

Solution à l'énigme

a guest Dec 16th, 2015 65 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. def primes(x):
  2.     """Calcule la liste des premiers inférieurs à x."""
  3.     P = []
  4.     for n in range(2,x):
  5.         isprime = True
  6.         for p in P:
  7.             if n % p == 0:
  8.                 isprime = False
  9.         if isprime:
  10.             P.append(n)
  11.     return(P)
  12.  
  13. def test(n, p):
  14.     """Teste si n mod p est premier."""
  15.     b = (n % p) in primes(p)
  16.     return(b)
  17.  
  18. def enigme(bmin, bmax, mods):
  19.     """Résoud l'énigme pour des valeurs entre bmin et bmax,
  20.       mods listant les dividendes dans le calcul des restes."""
  21.     sol = []
  22.     for n in range(bmin, bmax):
  23.         b = True
  24.         for p in mods:
  25.             b = b and test(n, p)
  26.         if b:
  27.             sol.append(n)
  28.     return(sol)
  29.  
  30. if __name__ == '__main__':
  31.     r = "La solution est {}. {} un nombre premier."
  32.     s = enigme(10, 1000, [5, 7, 11, 13, 17, 19, 23])[0]
  33.     if s in primes(s+1):
  34.         c = "C'est"
  35.     else:
  36.         c = "Ce n'est pas"
  37.     print(r.format(s, c))
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top