Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fundamentos de Programación
Duración 2.5 horas
*
Carlos Andres Delgado S, Msc
02 de Diciembre de 2019
Reglas
Debe seguir la metodologı́a vista en clase a través de los comentarios que realice en las
funciones que desarrolle, no realizar este paso se aplicará una fuerte penalización
Importante: Las pruebas de las funciones deben estar en el código y se deben tener al
menos 4 ejemplos creados por usted, si estos faltan se le aplicará una penalización
Problemas
1. [40 puntos] Una empresa requiere una función calcular-pago-trabajador que permita
calcular el sueldo a pagar en un mes de trabajo, para este ejercicio vamos a suponer que un
mes tiene 30 dı́as. Los trabajadores son modelados a través de las siguientes estructuras:
( define-struct t r a b a j a d o r − e j e c u t i v o ( nombre num−personas−acargo s a l a r i o − b a s e ) )
( define-struct t r a b a j a d o r − a d m i n i s t r a t i v o ( nombre s a l a r i o − b a s e ) )
( define-struct t r a b a j a d o r − o p e r a t i v o ( nombre s a l a r i o − p o r − h o r a h o r a s − t r a b a j a d a s ) )
Los trabajadores inician y finalizan en determinados dı́as del mes, de acuerdo a esto la
empresa paga una bonificación de acuerdo a la siguiente regla:
1
Y ası́ mismo los salarios por cada tipo de trabajador se calculan ası́:
( c a l c u l a r − p a g o − t r a b a j a d o r ( m a k e − t r a b a j a d o r − e j e c u t i v o ’ j u a n 25 1 0 0 0 0 0 ) 10 2 8 )
; ; En total recibe 100000 + 20000 ( m á s de 20 trabajadores ) + 15000*5 ( d ı́ as 10 al 15) +
12000*10 ( d ı́ as 15 al 25) + 11000*3 (25 al 28) Total 348000
( c a l c u l a r − p a g o ( m a k e − t r a b a j a d o r − a d m i n i s t r a t i v o ’ pedro 5 0 0 0 0 ) 5 1 5 )
; ; En total 50000 + 5*10000 ( d ı́ as 5 al 10) + 5*15000 ( d ı́ as 10 al 15) = 175000
( c a l c u l a r − p a g o ( m a k e − t r a b a j a d o r − o p e r a t i v o ’ c a r l o s 100 7 5 ) 12 2 4 )
; ; En total 100*75 + 3*15000 ( d ı́ as del 12 al 15) + 12000*9 ( d ı́ as 15 al 24) = 160500
2. [30 puntos] Una panaderia lleva un inventario de sus tres tipos de productos, en la
siguiente estructura
( define-struct i n v e n t a r i o ( t i p o 1 t i p o 2 t i p o 3 ) )
2
; ; Usamos la variable inventarioA
( a c t u a l i z a r − i n v e n t a r i o i n v e n t a r i o A ’ pandebono 2 0 ) )
; ; Retorna ( make-producto ’ pandebono 80 300) ( make-producto ’ pan-abuela 20 1000) (
make-producto ’ empanada 30 500) )
( a c t u a l i z a r − i n v e n t a r i o o inventarioA ’ arepa 20) )
; ; Retorna ( make-producto ’ pandebono 80 300) ( make-producto ’ pan-abuela 20 1000) (
make-producto ’ empanada 30 500) )
3. [30 puntos] En su hogar se tiene el problema que está llegando el recibo de la energı́a por
un valor muy elevado. Para analizar este problema, usted debe construir un programa que
permita calcular el costo total del recibo de energı́a. Para esto se manejan dos estructuras
; ; Para el total de electrodom é sticos de la casa ( en total tenemos 3)
( define-struct i n v e n t a r i o − e l e c t r o d o m e s t i c o s ( e l e c t r o d o m e s t i c o 1 e l e c t r o d o m e s t i c o 2
electrodomestico3 ) )
Ası́ mismo, el gobierno maneja las siguientes tarifas para el cobro del servicio de energı́a
( calcular−costo−energia inventario−electroA )
; ; El total de gasto es 10*20 + 15*10 +20*30 = 950 kw
; ; El pago ser á 300*50 + 200*100 + 450*150 = 102500
¡Exitos!