Здесь показаны различия между двумя версиями данной страницы.
| Both sides previous revision Предыдущая версия | |||
|
howto:randomize [2024/12/07 14:39] aleks_versus код для тестов |
howto:randomize [2026/02/26 10:31] (текущий) aleks_versus |
||
|---|---|---|---|
| Строка 12: | Строка 12: | ||
| <sxh qsp> | <sxh qsp> | ||
| - | local left, right, med = arrpack('args') | + | local left, right, med = %arrpack('args') |
| - | + | ||
| - | killvar 'd' | + | local d, x, items |
| - | + | ||
| - | N=1000000 | + | local N = 1000000 |
| - | + | *pl 'Генерируем числа. Подождите...' | |
| - | loop i=0 while i < N step i+=1: | + | wait 0 |
| + | loop local i=0 while i < N step i+=1: | ||
| x = rand(LEFT, RIGHT, MED) | x = rand(LEFT, RIGHT, MED) | ||
| d[x]+=1 | d[x]+=1 | ||
| end | end | ||
| - | stars=300 | + | local stars = 100 |
| - | total=0 | + | local total = 0 |
| - | loop i=LEFT while i<=RIGHT step i+=1: | + | loop i = LEFT while i<=RIGHT step i+=1: |
| items = d[i] * stars / N | items = d[i] * stars / N | ||
| - | | + | |
| loop while items > 0 step items-=1: | loop while items > 0 step items-=1: | ||
| *p '*' | *p '*' | ||
| end | end | ||
| - | perc=d[i]*10000/N | + | perc = d[i] * 1000/N |
| - | *pl ' <<perc/100>>.<<perc MOD 100>>% <<d[i]>>' | + | *pl ' <<perc/10>>.<<perc MOD 10>>% <<d[i]>>' |
| total += d[i] | total += d[i] | ||
| end | end | ||