Statistics/Basic: Difference between revisions
Content deleted Content added
Added Perl implementation |
Added PicoLisp |
||
Line 566: | Line 566: | ||
0.8 - 0.9 : ******************************* |
0.8 - 0.9 : ******************************* |
||
0.9 - 1.0 : *******************************</pre> |
0.9 - 1.0 : *******************************</pre> |
||
=={{header|PicoLisp}}== |
|||
<lang PicoLisp>(scl 6) |
|||
(de statistics (Cnt . Prg) |
|||
(prinl Cnt " numbers") |
|||
(let (Sum 0 Sqr 0 Hist (need 10 NIL 0)) |
|||
(do Cnt |
|||
(let N (run Prg 1) # Get next number |
|||
(inc 'Sum N) |
|||
(inc 'Sqr (*/ N N 1.0)) |
|||
(inc (nth Hist (inc (/ N 0.1)))) ) ) |
|||
(let M (*/ Sum Cnt) |
|||
(prinl "Mean: " (round M)) |
|||
(prinl "StdDev: " |
|||
(round |
|||
(sqrt |
|||
(* 1.0 |
|||
(- (*/ Sqr Cnt) (*/ M M 1.0)) ) ) ) ) ) |
|||
(for (I . H) Hist |
|||
(prin (format I 1) " ") |
|||
(do (*/ H 400 Cnt) (prin '=)) |
|||
(prinl) ) ) )</lang> |
|||
Test: |
|||
<lang PicoLisp>(statistics 100 |
|||
(rand 0 (dec 1.0)) ) |
|||
(prinl) |
|||
(statistics 10000 |
|||
(rand 0 (dec 1.0)) ) |
|||
(prinl) |
|||
(statistics 1000000 |
|||
(rand 0 (dec 1.0)) ) |
|||
(prinl)</lang> |
|||
Output: |
|||
<pre>100 numbers |
|||
Mean: 0.501 |
|||
StdDev: 0.284 |
|||
0.1 ======================================== |
|||
0.2 ==================================== |
|||
0.3 ==================================================== |
|||
0.4 ======================== |
|||
0.5 ======================== |
|||
0.6 ================================================================ |
|||
0.7 ======================================================== |
|||
0.8 ==================================== |
|||
0.9 ======================== |
|||
1.0 ============================================ |
|||
10000 numbers |
|||
Mean: 0.501 |
|||
StdDev: 0.288 |
|||
0.1 ======================================= |
|||
0.2 ======================================== |
|||
0.3 ======================================= |
|||
0.4 ========================================= |
|||
0.5 ========================================= |
|||
0.6 ======================================== |
|||
0.7 ========================================= |
|||
0.8 ======================================== |
|||
0.9 ======================================== |
|||
1.0 ======================================== |
|||
1000000 numbers |
|||
Mean: 0.500 |
|||
StdDev: 0.289 |
|||
0.1 ======================================== |
|||
0.2 ======================================== |
|||
0.3 ======================================== |
|||
0.4 ======================================== |
|||
0.5 ======================================== |
|||
0.6 ======================================== |
|||
0.7 ======================================== |
|||
0.8 ======================================== |
|||
0.9 ======================================== |
|||
1.0 ========================================</pre> |
|||
=={{header|Python}}== |
=={{header|Python}}== |