Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (define-struct producto (nombre valor))
- ;;Autor: Carlos A Delgado S.
- ;;Fecha: 22 de Marzo de 2021
- ;;Contrato: filtro: lista de productos, (producto->booleano) -> lista de producto
- (define (filtro lst f)
- (cond
- [(empty? lst) empty]
- [(f (first lst)) (cons (first lst) (filtro (rest lst) f))]
- [else (filtro (rest lst) f)]
- ))
- ;;Diseñar filtros: mayor a un valor, menor a un valor y así ......
- (define (producto-mas-2000 prod)
- (> (producto-valor prod) 2000))
- (define (producto-igual-3000 prod)
- (= (producto-valor prod) 3000))
- (define (producto-cafe prod)
- (symbol=? (producto-nombre prod) 'cafe))
- (define listaP
- (list (make-producto 'cafe 4000)
- (make-producto 'soya 3000)
- (make-producto 'ajo 200)
- (make-producto 'cafe 5000)
- (make-producto 'cafe 6000)
- (make-producto 'arepa 500)))
- (filtro listaP producto-mas-2000)
- (filtro listaP producto-igual-3000)
- (filtro listaP producto-cafe)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement