Advertisement
Guest User

b.py

a guest
May 25th, 2019
612
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.78 KB | None | 0 0
  1. import gmpy2
  2. import numpy as np
  3. import matplotlib.pyplot as plt
  4.  
  5. def dec2bin(x,n):
  6.     if x >= 0 :
  7.         return str(bin(x))[2:].zfill(n)
  8.     else:
  9.         return "-" + str(bin(x))[3:].zfill(n)
  10.  
  11. def digitBalance(string):
  12.     s = 0
  13.     for char in string:
  14.         if int(char) > 0:
  15.             s += 1
  16.         else:
  17.             s -= 1
  18.     return s
  19.  
  20. m = 10000
  21. primes = [1,2,3]
  22. seq = [0,0,1]
  23. #seq = [1,1,2]
  24. p = 3
  25. while p < m:
  26.     p = gmpy2.next_prime(primes[-1])
  27.     #p += 1
  28.     b = dec2bin(p,0)
  29.     middle = b[1:-1]
  30.     #left = b[:-1]
  31.     #right = b[1:]
  32.     #s = digitBalance(left)
  33.     #s = digitBalance(right)
  34.     s = digitBalance(middle)
  35.     seq.append(seq[-1]+s)
  36.     primes.append(p)
  37.  
  38. n = [i for i in range(len(seq))]
  39. plt.plot(n,seq)
  40. plt.grid(True)
  41. plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement