You don't handle negative input to fac/1 and you feed it with 4-11 -> -7<div><br></div><div>/Kenneth<br><br><div class="gmail_quote">On Fri, Mar 2, 2012 at 12:42 PM, Joe Armstrong <span dir="ltr"><<a href="mailto:erlang@gmail.com">erlang@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">-module(bug).<br>
-compile(export_all).<br>
<br>
bug() -> p(0.3, 4, 11).<br>
<br>
c(N, M) ->  fac(M) div (fac(N)*fac(M-N)).<br>
<br>
fac(0) -> 1;<br>
fac(N) -> N*fac(N-1).<br>
<br>
p(P, M, N) -> 1.0 - math:pow(1-P, N-M)*c(N, M).<br>
<br>
Running bug:bug() tries to turn my machine into a frying pan<br>
<br>
Should this be renamed frying_pan.erl ?<br>
<br>
Anybody else see this?<br>
<br>
<br>
/Joe<br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div><br></div>