Advertisement
Norbi930523

PiBBPBench.py

Nov 9th, 2013
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.88 KB | None | 0 0
  1. #!/usr/bin/python
  2. import math
  3. import time
  4.  
  5. def n16modk (n, k):
  6.     r = 1
  7.     t = 1
  8.    
  9.     while t <= n:
  10.         t *= 2
  11.  
  12.     while True:
  13.         if n >= t:
  14.             r = (16 * r) % k
  15.             n = n - t
  16.  
  17.         t = t / 2
  18.  
  19.         if t < 1:
  20.             break;
  21.  
  22.         r = (r * r) % k
  23.  
  24.     return r
  25.  
  26. def d16Sj (d, j):
  27.     d16Sj = 0.0
  28.     k = 0
  29.    
  30.     for k in range(0, d):
  31.         d16Sj += float(n16modk(d - k, 8 * k + j) / float((8 * k + j)))
  32.  
  33.     return d16Sj - math.floor(d16Sj)
  34.  
  35. d16Pi = 0.0;
  36.  
  37. d16S1t = 0.0;
  38. d16S4t = 0.0;
  39. d16S5t = 0.0;
  40. d16S6t = 0.0;
  41.  
  42. jegy = 0
  43. d = 0
  44.  
  45. delta = time.time()
  46.  
  47. for d in range(100000000, 100000001):
  48.     d16Pi = 0.0;
  49.  
  50.     d16S1t = d16Sj (d, 1)
  51.     d16S4t = d16Sj (d, 4)
  52.     d16S5t = d16Sj (d, 5)
  53.     d16S6t = d16Sj (d, 6)
  54.  
  55.     d16Pi = 4.0 * d16S1t - 2.0 * d16S4t - d16S5t - d16S6t
  56.  
  57.     d16Pi = d16Pi - math.floor(d16Pi)
  58.  
  59.     jegy = int(math.floor(16.0 * d16Pi))
  60.  
  61. print(jegy)
  62. delta = time.time() - delta
  63. print(delta)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement