Long stairs: Difference between revisions

Content added Content deleted
m (→‎{{header|Free Pascal}}: changed to run with gpc 20070904 on ideone https://ideone.com/WlzNjU)
Line 258: Line 258:


2938.387 average needed seconds</pre>
2938.387 average needed seconds</pre>

=={{header|Phix}}==
<!--<lang Phix>(phixonline)-->
<span style="color: #008080;">with</span> <span style="color: #008080;">javascript_semantics</span> <span style="color: #000080;font-style:italic;">-- (nb expect blank sccreen for ~30s)</span>
<span style="color: #004080;">integer</span> <span style="color: #000000;">total_seconds</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">total_steps</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span>
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"time behind ahead\n"</span><span style="color: #0000FF;">)</span>
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"---- ------ -----\n"</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">trial</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">10_000</span> <span style="color: #008080;">do</span>
<span style="color: #004080;">integer</span> <span style="color: #000000;">stairs_length</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">100</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">steps_behind</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">seconds</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span>
<span style="color: #008080;">while</span> <span style="color: #000000;">steps_behind</span> <span style="color: #0000FF;"><</span> <span style="color: #000000;">stairs_length</span> <span style="color: #008080;">do</span>
<span style="color: #000000;">steps_behind</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">1</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">wizard</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">5</span> <span style="color: #008080;">do</span>
<span style="color: #000000;">steps_behind</span> <span style="color: #0000FF;">+=</span> <span style="color: #0000FF;">(</span><span style="color: #7060A8;">rnd</span><span style="color: #0000FF;">()*</span><span style="color: #000000;">stairs_length</span> <span style="color: #0000FF;"><</span> <span style="color: #000000;">steps_behind</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">stairs_length</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">1</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<span style="color: #000000;">seconds</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">1</span>
<span style="color: #008080;">if</span> <span style="color: #000000;">trial</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">and</span> <span style="color: #000000;">seconds</span><span style="color: #0000FF;">>=</span><span style="color: #000000;">600</span> <span style="color: #008080;">and</span> <span style="color: #000000;">seconds</span><span style="color: #0000FF;"><=</span><span style="color: #000000;">609</span> <span style="color: #008080;">then</span>
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"%4d %7d %6d\n"</span><span style="color: #0000FF;">,</span> <span style="color: #0000FF;">{</span><span style="color: #000000;">seconds</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">steps_behind</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">stairs_length</span><span style="color: #0000FF;">-</span><span style="color: #000000;">steps_behind</span><span style="color: #0000FF;">})</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">while</span>
<span style="color: #000000;">total_seconds</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">seconds</span>
<span style="color: #000000;">total_steps</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">stairs_length</span>
<span style="color: #008080;">if</span> <span style="color: #000000;">trial</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">then</span> <span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"\n"</span><span style="color: #0000FF;">)</span> <span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"Average seconds: %f, average steps: %f\n"</span><span style="color: #0000FF;">,</span>
<span style="color: #0000FF;">{</span><span style="color: #000000;">total_seconds</span><span style="color: #0000FF;">/</span><span style="color: #000000;">10000</span><span style="color: #0000FF;">,</span><span style="color: #000000;">total_steps</span><span style="color: #0000FF;">/</span><span style="color: #000000;">10000</span><span style="color: #0000FF;">})</span>
<!--</lang>-->
{{out}}
<pre>
time behind ahead
---- ------ -----
600 1978 1122
601 1980 1125
602 1986 1124
603 1990 1125
604 1995 1125
605 1999 1126
606 2002 1128
607 2004 1131
608 2008 1132
609 2012 1133

Average seconds: 2913.609300, average steps: 14668.046500
</pre>


=={{header|Raku}}==
=={{header|Raku}}==