Created
February 1, 2014 22:47
-
-
Save tueda/8760191 to your computer and use it in GitHub Desktop.
1/9998 = 0.0001 0002 0004 0008 0016 0032 0064 0128 0256...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(* https://news.ycombinator.com/item?id=7144616 *) | |
SplitDigits[x_, n_, m_] := Module[{a}, | |
a = RealDigits[FractionalPart[N[x, n + 1]]]; | |
a = Join[ConstantArray[0, -a[[2]]], a[[1]]]; | |
a = Drop[a, -1]; | |
a = ToString /@ a; | |
a = Partition[a, m]; | |
a = (StringJoin @@ # &) /@ a; | |
a = ToExpression /@ a; | |
a | |
]; | |
n = 26; | |
aa = SplitDigits[1/99999998, 8 n, 8]; | |
bb = Table[2^n, {n, 0, n - 1}]; | |
aa // Print; | |
bb // Print; | |
aa == bb // Print; | |
n = 44; | |
aa = SplitDigits[1000/997002999, 3 (n - 1), 3]; | |
bb = Table[Binomial[n + 1, 2], {n, 0, n - 1}]; | |
aa // Print; | |
bb // Print; | |
aa == bb // Print; | |
n = 39; | |
aa = SplitDigits[1/9999999899999999, 8 (n - 1), 8]; | |
bb = Table[Fibonacci[i], {i, 0, n - 1}]; | |
aa // Print; | |
bb // Print; | |
aa == bb // Print; | |
n = 30; | |
aa = SplitDigits[1001000/997002999, 3 n, 3]; | |
bb = Table[n^2, {n, 1, n}]; | |
aa // Print; | |
bb // Print; | |
aa == bb // Print; | |
(* vim: set ft=mma et ts=8 sts=2 sw=2: *) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment