23 lines
625 B
Plaintext
23 lines
625 B
Plaintext
def rosetta := setupProbabilisticChoice(entropy, def probTable := [
|
|
"aleph" => 1/5,
|
|
"beth" => 1/6.0,
|
|
"gimel" => 1/7.0,
|
|
"daleth" => 1/8.0,
|
|
"he" => 1/9.0,
|
|
"waw" => 1/10.0,
|
|
"zayin" => 1/11.0,
|
|
"heth" => 0.063455988455988432,
|
|
])
|
|
|
|
var trials := 1000000
|
|
var timesFound := [].asMap()
|
|
for i in 1..trials {
|
|
if (i % 1000 == 0) { print(`${i//1000} `) }
|
|
def value := rosetta()
|
|
timesFound with= (value, timesFound.fetch(value, fn { 0 }) + 1)
|
|
}
|
|
stdout.println()
|
|
for item in probTable.domain() {
|
|
stdout.print(item, "\t", timesFound[item] / trials, "\t", probTable[item], "\n")
|
|
}
|