Clojure - Funcions amb llistes S96390


Statement
 

pdf   zip

thehtml

En aquest problema heu d’implementar una sèrie de funcions sobre llistes en Clojure.

  1. Feu una funció recursiva my-count1 que, donada una llista d’enters, calculi la seva mida.
  2. Feu una funció my-count2 (amb loop i recur) que, donada una llista d’enters, calculi la seva mida.
  3. Feu una funció recursiva my-maximum1 que, donada una llista d’enters no buida, calculi el seu màxim.
  4. Feu una funció my-maximum2 (amb loop i recur) que, donada una llista d’enters no buida, calculi el seu màxim.
  5. Feu una funció recursiva average1 que, donada una llista d’enters no buida, calculi la seva mitjana.
  6. Feu una funció average2 (amb loop i recur) que, donada una llista d’enters no buida, calculi la seva mitjana.

Observacions

Per resoldre aquest problema no podeu utilitzar les funcions que ja incorpora Clojure com count o max.

Puntuació

Cada funció puntua 15 punts i l’exemple 10.

Public test cases
  • Input

    (my-count1 '(1 2 2))
    (my-count2 '(1 2 2))
    (my-maximum1 '(4 3 1 5 4 5 2))
    (my-maximum2 '(4 3 1 5 4 5 2))
    (average1 '(1 2 3))
    (average2 '(1 2 3))
    
    

    Output

    3
    3
    5
    5
    2
    2
    
    
  • Information
    Author
    Albert Rubio / Jordi Petit / Gerard Escudero
    Language
    Catalan
    Official solutions
    Clojure
    User solutions
    Clojure