Здесь показаны различия между двумя версиями данной страницы.
howto:randomize [2024/12/01 10:32] aleks_versus создано |
howto:randomize [2024/12/07 14:39] (текущий) aleks_versus код для тестов |
||
---|---|---|---|
Строка 9: | Строка 9: | ||
[[https://ru.wikipedia.org/wiki/Нормальное_распределение|Нормальное распределение]] | [[https://ru.wikipedia.org/wiki/Нормальное_распределение|Нормальное распределение]] | ||
+ | код для тестов распределения: | ||
+ | |||
+ | <sxh qsp> | ||
+ | local left, right, med = arrpack('args') | ||
+ | |||
+ | killvar 'd' | ||
+ | |||
+ | N=1000000 | ||
+ | |||
+ | loop i=0 while i < N step i+=1: | ||
+ | x = rand(LEFT, RIGHT, MED) | ||
+ | d[x]+=1 | ||
+ | end | ||
+ | stars=300 | ||
+ | total=0 | ||
+ | loop i=LEFT while i<=RIGHT step i+=1: | ||
+ | items = d[i] * stars / N | ||
+ | | ||
+ | loop while items > 0 step items-=1: | ||
+ | *p '*' | ||
+ | end | ||
+ | perc=d[i]*10000/N | ||
+ | *pl ' <<perc/100>>.<<perc MOD 100>>% <<d[i]>>' | ||
+ | total += d[i] | ||
+ | end | ||
+ | '================== TOTAL: <<total>>' | ||
+ | </sxh> | ||