14 lines
524 B
Text
14 lines
524 B
Text
F entropy(s)
|
||
I s.len <= 1
|
||
R 0.0
|
||
V lns = Float(s.len)
|
||
V count0 = s.count(‘0’)
|
||
R -sum((count0, s.len - count0).map(count -> count / @lns * log(count / @lns, 2)))
|
||
|
||
V fwords = [String(‘1’), ‘0’]
|
||
print(‘#<3 #10 #<10 #.’.format(‘N’, ‘Length’, ‘Entropy’, ‘Fibword’))
|
||
L(n) 1..37
|
||
L fwords.len < n
|
||
fwords [+]= reversed(fwords[(len)-2..]).join(‘’)
|
||
V v = fwords[n - 1]
|
||
print(‘#3.0 #10.0 #2.7 #.’.format(n, v.len, entropy(v), I v.len < 56 {v} E ‘<too long>’))
|