fork download
  1. def two_series(iterations, divisors=(1,)):
  2. total = sum([1 / d for d in divisors])
  3. print(" + ".join(["1/{}".format(n) for n in divisors]), "=", total)
  4.  
  5. if iterations:
  6. two_series(iterations-1, divisors=(divisors + (divisors[-1]*2,)))
  7.  
  8.  
  9.  
  10. two_series(iterations=15)
Success #stdin #stdout 0.01s 28384KB
stdin
Standard input is empty
stdout
1/1 = 1.0
1/1 + 1/2 = 1.5
1/1 + 1/2 + 1/4 = 1.75
1/1 + 1/2 + 1/4 + 1/8 = 1.875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 = 1.9375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 = 1.96875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 = 1.984375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 = 1.9921875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 = 1.99609375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 = 1.998046875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 = 1.9990234375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 + 1/2048 = 1.99951171875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 + 1/2048 + 1/4096 = 1.999755859375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 + 1/2048 + 1/4096 + 1/8192 = 1.9998779296875
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 + 1/2048 + 1/4096 + 1/8192 + 1/16384 = 1.99993896484375
1/1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + 1/64 + 1/128 + 1/256 + 1/512 + 1/1024 + 1/2048 + 1/4096 + 1/8192 + 1/16384 + 1/32768 = 1.999969482421875