Geocrack

pi

Jun 29th, 2022 (edited)
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.30 KB | None | 0 0
  1. def calcPi(limit):
  2.     q, r, t, k, n, l = 1, 0, 1, 1, 3, 3
  3.  
  4.     decimal = limit
  5.     counter = 0
  6.  
  7.     while counter != decimal + 1:
  8.             if 4 * q + r - t < n * t:
  9.                     yield n
  10.                     if counter == 0:
  11.                             yield '.'
  12.                     if decimal == counter:
  13.                             print('')
  14.                             break
  15.                     counter += 1
  16.                     nr = 10 * (r - n * t)
  17.                     n = ((10 * (3 * q + r)) // t) - 10 * n
  18.                     q *= 10
  19.                     r = nr
  20.             else:
  21.                     nr = (2 * q + r) * l
  22.                     nn = (q * (7 * k) + 2 + (r * l)) // (t * l)
  23.                     q *= k
  24.                     t *= l
  25.                     l += 2
  26.                     k += 1
  27.                     n = nn
  28.                     r = nr
  29.  
  30.  
  31. def main():
  32.     eingabe = int(input("Welche Stelle von pi wollen Sie berechnen? : "))
  33.     ausgabe = calcPi(eingabe)
  34.  
  35.     for digit in ausgabe:
  36.         i = digit
  37.     print(f"Die {eingabe}te Stelle von Pi ist {digit}")
  38.  
  39.     ausgabe = calcPi(eingabe)
  40.     for d in ausgabe:
  41.         print(d, end='')
  42.         i += 1
  43.         if i == 40:
  44.             print("")
  45.             i = 0
  46.        
  47.  
  48. if __name__ == '__main__':
  49.     main()
Add Comment
Please, Sign In to add comment