2009-08-11

ufm: (Default)

-module(sum).
-export([sum/1]).

sum(N) -> sum_acc(N,0).
sum_acc(1,A) -> A+1;
sum_acc(N,A) -> sum_acc(N-1,A+N).

P.S. Кто угадает название учебника? :)

Originally published at U.F.M's Homepage. Please leave any comments there.

ufm: (Default)

-module(sum).
-export([sum/1,sum/2]).

sum(N) -> sum_acc(1,N,0).
sum(B,N) -> sum_acc(B,N,0).

sum_acc(B,N,A) when B =:= N -> A+N;
sum_acc(B,N,_) when B > N -> throw({’EXIT’,{wrong_param,sum_acc}});
sum_acc(B,N,A) -> sum_acc(B,N-1,A+N).

Originally published at U.F.M's Homepage. Please leave any comments there.

ufm: (Default)

Надо было по мимо “равно” (==), “строго равно” (=:=), “не равно” (/=) и “строго не равно” (=/=) ввести еще

“мамой клянусь равно”, “что-то типа”, “даже рядом не лежало с” и “в общем то по барабану”.

Originally published at U.F.M's Homepage. Please leave any comments there.