Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Erlang 1.22 KB | None | 0 0
  1. % moje zadanka z foldl
  2.  
  3. %zwróć listę, która zawiera wartości bezwzględne wszystkich liczb
  4. absOfList(L) -> lists:foldl(fun(A,Acc) -> if A>0 -> Acc++[A]; A<0 -> Acc++[-A] end end, [], L).
  5.  
  6. %zamień każdy element "Element" na "Other" : ([1,2,3],2,5) = [1,5,3]
  7. changeElementToOther(L,Element,Other) -> lists:foldl(fun(A,Acc)-> if A==Element -> Acc++[Other]; A=/=Element -> Acc++[A] end end, [], L).
  8.  
  9. % [1,2,3,4,5] = [5,4,3,2,1]
  10. reverseElements(L) -> lists:foldr(fun(A,Acc)-> Acc++[A] end, [], L).
  11.  
  12. % jak chce sie uzyć when -> trzeba zrobic zawsze (_,Acc) ->
  13. % robimy warunek when, a potem (_,Acc), czyli co jeśli warunek się nie spełni
  14.  
  15. % NA PODSTAWIE TEGO MOŻNA ZROBIĆ RÓWNIEŻ -> ZWRÓĆ WSZYSTKIE MNIEJSZE/WIĘKSZE OD WSZYSTKIE, NIE MAJĄ ITP
  16. retAllNumbersBiggerThan(L,X) -> lists:foldl(fun(A,Acc) when A > X -> Acc++[A]; (_,Acc)->Acc end, [], L).
  17.  
  18. % zamiana ujemnych na zero
  19. changeNegativeToZero(L) -> lists:foldl(fun(A,Acc) when A >= 0 -> Acc++[A]; (_,Acc)->Acc++[0] end,[],L).
  20.  
  21. % posortuj rosnąco (jakiś tam sort)
  22. sort(Element,[])->[Element];
  23. sort(Element, [H|T]) -> if Element >= H -> [Element,H|T]; Element < H -> [H|sort(Element,T)] end.
  24. mySort(L) -> lists:foldl( fun(A,Acc) -> sort(A,Acc) end,[],L).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement