Advertisement
tomasfdel

Racket Práctica 4.1

May 19th, 2016
360
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Racket 2.44 KB | None | 0 0
  1.         EJERCICIO 5)
  2.  
  3. (define (contiene? cadena lista) (cond [(empty? lista) #false]
  4.                                        [(string=? (first lista) cadena) #true]
  5.                                        [else (contiene? cadena (rest lista))]) )
  6.  
  7. ; (contiene? "Laura" (cons "a" (cons "b" (cons "Laura" '())))) -> TRUE
  8. ; (contiene? "dat boi" (cons "a" (cons "b" (cons "Laura" '())))) -> FALSE
  9.  
  10. EJERCICIO 7)
  11.  
  12. (define (suma lista) (cond [(empty? lista) 0]
  13.                            [else (+ (first lista) (suma (rest lista)))]))
  14.  
  15.  
  16. EJERCICIO 8)
  17.  
  18. (define (pos? in_peace) (cond [(empty? in_peace) #true]
  19.                               [else (and (>= (first in_peace) 0) (pos? (rest in_peace)))]) )
  20.  
  21. ; (pos? (list 1 2 3)) -> TRUE
  22. ; (pos? (list 1 2 -3)) -> FALSE
  23.  
  24. (define (checked-suma lista) (cond
  25.                                [(not (pos? lista)) "Error: Debe ser una lista de números positivos."]
  26.                                [else (suma lista)]))
  27.  
  28. EJERCICIO 9)
  29.  
  30. (define (todos-verdaderos lista) (cond
  31.                                    [(empty? lista) #true]
  32.                                    [else (and (first lista) (todos-verdaderos (rest lista)))]) )
  33.  
  34. ;(todos-verdaderos (list #t #t #t #t #t #t #t #t #t #t #t)) -> TRUE
  35. ;(todos-verdaderos (list #t #t #t #t #t #t #t #t #t #t #f)) -> FALSE
  36.  
  37.  
  38. (define (uno-verdadero lista) (cond
  39.                                    [(empty? lista) #false]
  40.                                    [else (or (first lista) (uno-verdadero (rest lista)))]) )
  41.  
  42. ;(uno-verdadero (list #f #f #f #f #f)) -> FALSE
  43. ;(uno-verdadero (list #f #f #t #f #f)) -> TRUE
  44.  
  45. EJERCICIO 10)
  46.  
  47. (define (cat lista) (cond
  48.                       [(empty? lista) ""]
  49.                       [else (string-append (first lista) (cat (rest lista)) )]) )
  50.  
  51.  
  52. (cat (list "here " "comes " "dat " "boi"))
  53.  
  54. EJERCICIO 11)
  55.  
  56. (define (cantidad-elementos lista) (cond
  57.                       [(empty? lista) 0]
  58.                       [else (+ 1 (cantidad-elementos (rest lista)) )]) )
  59.  
  60.  
  61. ;(cantidad-elementos (list "here " "comes " "dat " "boi")) -> 4
  62.  
  63. EJERCICIO 12)
  64.  
  65. (define (promedio lista) (/ (suma lista) (cant-elementos lista)))
  66.  
  67. EJERCICIO 13)
  68.  
  69. (define (mayores lista numero) (cond [(empty? lista) '()]
  70.                                      [(> (first lista) numero) (cons (first lista) (mayores (rest lista) numero) )]
  71.                                      [else (mayores (rest lista) numero)]) )
  72.  
  73.  
  74. (mayores (list 1 2 3) 1)
  75. (mayores (list 1 2 3) 4)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement