Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;;Autor: Carlos A Delgado
- ;;Fecha: 08 de Agosto de 2020
- ;;COntrato: suma-lista: lista de numeros -> numero
- ;;Propósito: Toma una lista de 4 números y nos retorna su suma
- ;;Ejemplos
- ;;(suma-lista (cons 1 (cons 2 (cons 3 (cons 4 empty)))) ) 10
- ;;(suma-lista (cons -1 (cons 1 (cons 4 (cons -6 empty)))) ) -2
- (define (suma-lista lst)
- (if
- (cons? lst)
- (+ (first lst) (first (rest lst)) (first (rest (rest lst))) (first (rest (rest (rest lst)))))
- (error "Debe ingresarse una lista de números")))
- (check-expect (suma-lista (cons 1 (cons 2 (cons 3 (cons 4 empty)))) ) 10)
- (check-expect (suma-lista (cons -1 (cons 1 (cons 4 (cons -6 empty)))) ) -2)
- ;;Autor: Carlos A Delgado
- ;;Fecha: 08 de Agosto de 2020
- ;;Contrato: hay-mula?: lista de símbolos -> booleano
- ;;Propósito: Esta función sirve para saber si en una lista de símbolos
- ;;Ejemplos
- ;;(hay-mula? (cons 'perro (cons 'gato (cons 'mula (cons 'caballo empty)))) ) #T
- ;;(hay-mula? (cons 'perro (cons 'gato (cons 'vaca (cons 'caballo empty)))) ) #F
- (define (hay-mula? lst)
- (cond
- [(not (cons? lst)) (error "La entrada debe ser una lista de símbolos")]
- [(equal? (first lst) 'mula) #T]
- [(equal? (first (rest lst)) 'mula) #T]
- [(equal? (first (rest (rest lst))) 'mula) #T]
- [(equal? (first (rest (rest (rest lst)))) 'mula) #T]
- [else #F]
- ))
- (check-expect (hay-mula? (cons 'perro (cons 'gato (cons 'mula (cons 'caballo empty)))) ) #T)
- (check-expect (hay-mula? (cons 'perro (cons 'gato (cons 'vaca (cons 'caballo empty)))) ) #F)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement