Advertisement
Guest User

Untitled

a guest
May 16th, 2019
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Erlang 1.50 KB | None | 0 0
  1. -module(lab9).
  2. -export([add/2,same/2,razy3/1,head/1,silnia/1,parzyste/1,fib/1,silniaI/2,silniaI/1,nalezy/2,nalezyI/2,polacz/2,dlugosc/1,dlugoscI/1,dlugoscI/2,sumaI/1,sumaI/2,zmniejsz_o_n/2,zmniejsz_o_n/3]).
  3.  
  4.  
  5. add(A,B) ->
  6.     A + B.
  7.  
  8.  
  9.  
  10. same(A,B) when (A==B) ->
  11.     true;
  12.    
  13. same(A,B) when (A/=B) ->
  14.     false.
  15.  
  16.  
  17.  
  18. razy3(N) ->
  19.     N * 3.
  20.  
  21.  
  22.  
  23. head([T|H]) ->
  24.     T.
  25.  
  26.  
  27.  
  28. silnia(N) when (N==1) ->
  29.     N;
  30.  
  31. silnia(N) when (N>1) ->
  32.     N * silnia(N-1).
  33.  
  34.  
  35.  
  36. parzyste(N) when(N==1) ->
  37.     false;
  38.    
  39. parzyste(N) when(N==0) ->
  40.     true;
  41.  
  42. parzyste(N) when(N>1) ->
  43.     parzyste(N-2).
  44.  
  45.  
  46.  
  47. fib(N) when(N==1) ->
  48.     1;
  49.  
  50. fib(N) when(N==2) ->
  51.     1;
  52.  
  53. fib(N) when(N>2) ->
  54.     fib(N-1)+fib(N-2).
  55.    
  56.  
  57.  
  58. nalezy(N,L) ->
  59.     lists:member(N,L).
  60.  
  61.  
  62.  
  63. nalezyI(N,[]) ->
  64.     false;
  65.  
  66. nalezyI(N,[N|T]) ->
  67.     true;
  68.    
  69. nalezyI(N,[H|T]) ->
  70.     nalezy(N,T).
  71.  
  72.  
  73.  
  74. dlugosc(L) ->
  75.     length(L).
  76.  
  77.  
  78.  
  79. polacz(L1,L2) ->
  80.     L1 ++ L2.
  81.  
  82.  
  83.  
  84. silniaI(N,R) when(N==1) ->
  85.     R;
  86.  
  87. silniaI(N,R) when(N>1) ->
  88.     RX = R * N,
  89.     silniaI(N-1,RX).
  90.  
  91. silniaI(N) when(N>1) ->
  92.     silniaI(N,1).
  93.  
  94.  
  95.  
  96. dlugoscI(L) ->
  97.     dlugoscI(L,0).
  98.    
  99. dlugoscI([H|T],N) ->
  100.     dlugoscI(T,N+1);
  101.    
  102. dlugoscI([],N) ->
  103.     N.
  104.  
  105.  
  106.  
  107. sumaI(L)->
  108.     sumaI(L,0).
  109.  
  110. sumaI([H|T],N)->
  111.     NS = N + H,
  112.     sumaI(T,NS);
  113.  
  114. sumaI([],N)->
  115.     N.
  116.  
  117.  
  118.  
  119. zmniejsz_o_n(L,N)->
  120.     zmniejsz_o_n(L,N,[]).
  121.    
  122. zmniejsz_o_n([H|T],N,O)->
  123.     OI = O ++ [(H-N)],
  124.     zmniejsz_o_n(T,N,OI);
  125.  
  126. zmniejsz_o_n([],N,O)->
  127.     O.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement