Data update
This commit is contained in:
parent
0df55f9f24
commit
aec8ed51b6
1045 changed files with 18889 additions and 2777 deletions
31
Task/Benfords-law/SETL/benfords-law.setl
Normal file
31
Task/Benfords-law/SETL/benfords-law.setl
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
program benfords_law;
|
||||
fibos := fibo_list(1000);
|
||||
|
||||
expected := [log(1 + 1/d)/log 10 : d in [1..9]];
|
||||
actual := benford(fibos);
|
||||
|
||||
print('d Expected Actual');
|
||||
loop for d in [1..9] do
|
||||
print(d, ' ', fixed(expected(d), 7, 5), ' ', fixed(actual(d), 7, 5));
|
||||
end loop;
|
||||
|
||||
proc benford(list);
|
||||
dist := [];
|
||||
loop for n in list do
|
||||
dist(val(str n)(1)) +:= 1;
|
||||
end loop;
|
||||
return [d / #list : d in dist];
|
||||
end proc;
|
||||
|
||||
proc fibo_list(n);
|
||||
a := 1;
|
||||
b := 1;
|
||||
fibs := [];
|
||||
loop while n>0 do
|
||||
fibs with:= a;
|
||||
[a, b] := [b, a+b];
|
||||
n -:= 1;
|
||||
end loop;
|
||||
return fibs;
|
||||
end proc;
|
||||
end program;
|
||||
Loading…
Add table
Add a link
Reference in a new issue