Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,90 @@
|
|||
-V MAXITER = 151
|
||||
|
||||
F minkowski(x) -> Float
|
||||
I x > 1 | x < 0
|
||||
R floor(x) + minkowski(x - floor(x))
|
||||
|
||||
V p = Int(x)
|
||||
V q = 1
|
||||
V r = p + 1
|
||||
V s = 1
|
||||
V d = 1.0
|
||||
V y = Float(p)
|
||||
|
||||
L
|
||||
d /= 2
|
||||
I y + d == y
|
||||
L.break
|
||||
|
||||
V m = p + r
|
||||
I m < 0 | p < 0
|
||||
L.break
|
||||
|
||||
V n = q + s
|
||||
I n < 0
|
||||
L.break
|
||||
|
||||
I x < Float(m) / n
|
||||
r = m
|
||||
s = n
|
||||
E
|
||||
y += d
|
||||
p = m
|
||||
q = n
|
||||
|
||||
R y + d
|
||||
|
||||
F minkowski_inv(=x) -> Float
|
||||
I x > 1 | x < 0
|
||||
R floor(x) + minkowski_inv(x - floor(x))
|
||||
|
||||
I x == 1 | x == 0
|
||||
R x
|
||||
|
||||
V cont_frac = [0]
|
||||
V current = 0
|
||||
V count = 1
|
||||
V i = 0
|
||||
|
||||
L
|
||||
x *= 2
|
||||
|
||||
I current == 0
|
||||
I x < 1
|
||||
count++
|
||||
E
|
||||
cont_frac.append(0)
|
||||
cont_frac[i] = count
|
||||
|
||||
i++
|
||||
count = 1
|
||||
current = 1
|
||||
x--
|
||||
E
|
||||
I x > 1
|
||||
count++
|
||||
x--
|
||||
E
|
||||
cont_frac.append(0)
|
||||
cont_frac[i] = count
|
||||
|
||||
i++
|
||||
count = 1
|
||||
current = 0
|
||||
|
||||
I x == floor(x)
|
||||
cont_frac[i] = count
|
||||
L.break
|
||||
|
||||
I i == :MAXITER
|
||||
L.break
|
||||
|
||||
V ret = 1.0 / cont_frac[i]
|
||||
L(j) (i-1 .. 0).step(-1)
|
||||
ret = cont_frac[j] + 1.0 / ret
|
||||
|
||||
R 1.0 / ret
|
||||
|
||||
print(‘#2.16 #2.16’.format(minkowski(0.5 * (1 + sqrt(5))), 5.0 / 3.0))
|
||||
print(‘#2.16 #2.16’.format(minkowski_inv(-5.0 / 9.0), (sqrt(13) - 7) / 6))
|
||||
print(‘#2.16 #2.16’.format(minkowski(minkowski_inv(0.718281828)), minkowski_inv(minkowski(0.1213141516171819))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue