【erlang】練習題0001.匿名函數練習

一、匿名函數

0.返回2的倍數

Double = fun(X) -> X * 2 end.

1.求直角三角形斜邊長度

C = \sqrt{a^{2} + b^{2}}

Hypot = fun(X,Y) -> math:sqrt(X*X + Y*Y) end.

2.攝氏度和華氏度轉換

換算公式:
F=C\ast \frac{9}{5} +32
C=(F-32)\ast \frac{5}{9}


其中:
F ——華氏溫度          ℃ ——攝氏溫度

Temperature  =  fun({f,F}) -> {c,(F - 32) * 5/9};
                    ({c,C}) -> {f,C * 9/5 + 32} 
                end.

二、將匿名函數作爲參數

1.給出列表L=[1,2,3],使用lists模塊map方法,對列表內每個元素 * 2

lists:map(fun(X)->X * 2 end,L).

2.給出列表L=[1,2,3],使用lists模塊filter方法,保留2的倍數的數

 lists:filter(fun(X)->X rem 2 =:= 0 end,L).

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章