Advertisement
OnlyStiven

Untitled

Aug 14th, 2020
730
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 6.51 KB | None | 0 0
  1. (define (actualizar-inventario inventario elemento cantidad)
  2.   (cond
  3.     [ (symbol=? (producto-nombre (inventario-tipo1 inventario) ) elemento  ) (cond
  4.                                                      [ (>= (producto-cantidad (inventario-tipo1 inventario)) cantidad) (make-inventario
  5.                                                                                                                         (make-producto(producto-nombre (inventario-tipo1 inventario) )
  6.                                                                                                                         (- (producto-cantidad (inventario-tipo1 inventario)) cantidad  )
  7.                                                                                                                         (producto-valor_unidad (inventario-tipo1 inventario) ) )
  8.                                                                                                                         (make-producto(producto-nombre (inventario-tipo2 inventario) )
  9.                                                                                                                         (producto-cantidad (inventario-tipo2 inventario))
  10.                                                                                                                         (producto-valor_unidad (inventario-tipo2 inventario) ) )
  11.                                                                                                                         (make-producto(producto-nombre (inventario-tipo3 inventario) )
  12.                                                                                                                         (producto-cantidad (inventario-tipo3 inventario))
  13.                                                                                                                         (producto-valor_unidad (inventario-tipo3 inventario) ))
  14.                                                                                                                         ) ]
  15.                                                      [ else (error "No hay suficientes unidades en el inventario. Intente de nuevo con una cantidad menor por favor.") ]
  16.                                                      ) ]
  17.     [ (symbol=? (producto-nombre (inventario-tipo2 inventario) )elemento ) (cond
  18.                                                      [ (>= (producto-cantidad (inventario-tipo1 inventario)) cantidad) (make-inventario
  19.                                                                                                                         (make-producto(producto-nombre (inventario-tipo1 inventario) )
  20.                                                                                                                         (producto-cantidad (inventario-tipo1 inventario))
  21.                                                                                                                         (producto-valor_unidad (inventario-tipo1 inventario) ) )
  22.                                                                                                                         (make-producto(producto-nombre (inventario-tipo2 inventario) )
  23.                                                                                                                         (- (producto-cantidad (inventario-tipo2 inventario)) cantidad  )
  24.                                                                                                                         (producto-valor_unidad (inventario-tipo2 inventario) ) )
  25.                                                                                                                         (make-producto(producto-nombre (inventario-tipo3 inventario) )
  26.                                                                                                                         (producto-cantidad (inventario-tipo3 inventario))
  27.                                                                                                                         (producto-valor_unidad (inventario-tipo3 inventario) ))
  28.                                                                                                                         ) ]
  29.                                                      [ else (error "No hay suficientes unidades en el inventario. Intente de nuevo con una cantidad menor por favor.") ]
  30.                                                      ) ]
  31.     [ (symbol=? (producto-nombre (inventario-tipo3 inventario) ) elemento ) (cond
  32.                                                      [ (>= (producto-cantidad (inventario-tipo1 inventario)) cantidad) (make-inventario
  33.                                                                                                                         (make-producto(producto-nombre (inventario-tipo1 inventario) )
  34.                                                                                                                         (producto-cantidad (inventario-tipo1 inventario))
  35.                                                                                                                         (producto-valor_unidad (inventario-tipo1 inventario) ) )
  36.                                                                                                                         (make-producto(producto-nombre (inventario-tipo2 inventario) )
  37.                                                                                                                         (producto-cantidad (inventario-tipo2 inventario))
  38.                                                                                                                         (producto-valor_unidad (inventario-tipo2 inventario) ) )
  39.                                                                                                                         (make-producto(producto-nombre (inventario-tipo3 inventario) )
  40.                                                                                                                         (- (producto-cantidad (inventario-tipo3 inventario)) cantidad  )
  41.                                                                                                                         (producto-valor_unidad (inventario-tipo3 inventario) ))
  42.                                                                                                                         ) ]
  43.                                                      [ else (error "No hay suficientes unidades en el inventario. Intente de nuevo con una cantidad menor por favor.") ]
  44.                                                      ) ]
  45.     [else inventario ]
  46.     )
  47.   )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement