Advertisement
Guest User

PiBBp_bench.py

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