避免在SPOJ中的Erlang中出现NZEC错误

时间:2010-07-22 14:47:34

标签: erlang

我在Erlang中编写了代码,并且在我的机器上得到了正确的答案。但是当我在SPOJ上提交它时,它会给出NZEC(非零退出代码)错误。我使用了内置函数,如halt()init:stop(),它们的规范清楚地表明它们用于避免非零退出代码错误。但我仍然得到同样的错误。我该如何解决这个问题?

编辑评论所需的代码:

-module(factorial).
-export([main/0]).

main() ->
    {ok, [No_of_cases]} = io:fread("", "~d"),
    loop(No_of_cases).

loop(0) ->
%init:stop();
halt(1);
loop(No_of_cases) ->
    {ok, [Number]} = io:fread("", "~d"),
    ResultFactorial = find_factorial(Number,1),
    io:format("~p~n",[ResultFactorial]),
    loop(No_of_cases-1).

find_factorial(0,Product) ->
    Product;
find_factorial(Number,Product) ->
    find_factorial(Number-1,Product*Number).

1 个答案:

答案 0 :(得分:4)