Seven-sided dice from five-sided dice: Difference between revisions

Content added Content deleted
(→‎{{header|Julia}}: Marked incomplete as missing check for at least 1000000)
(→‎{{header|Julia}}: fixed dice7() to ensure uniform distribution of results; added histogram checks)
Line 960: Line 960:


=={{header|Julia}}==
=={{header|Julia}}==
{{incomplete|Julia|Missing check for at least 1000000}}
<lang Julia>dice5() = rand(1:5)
<lang Julia>dice5() = rand(1:5)
function dice7()
function dice7()
r = int((dice5()+5dice5()-3)/3)
r = 5*dice5() + dice5() - 6
r>7 ? dice7() : r
r < 21 ? (r%7 + 1) : dice7()
end</lang>
end</lang>
{{Out}}
{{Out}}
<pre>julia> show([dice5() for i=1:20])
<pre>julia> hist([dice5() for i=1:10^6])
(0:1:5,[199932,200431,199969,199925,199743])
[1,4,3,2,4,1,1,5,4,2,3,5,5,3,2,4,2,4,4,2]


julia> show([dice7() for i=1:20])
julia> hist([dice7() for i=1:10^6])
(0:1:7,[142390,143032,142837,142999,142800,142642,143300])</pre>
[3,2,6,7,5,6,4,4,6,6,7,2,6,3,2,7,5,2,1,3]</pre>


=={{header|Lua}}==
=={{header|Lua}}==