22-04-2014, 07:48
Me trabe con esto..
1b) Conocer el monto de facturación de un paciente, o sea, lo que el dentista le facturó a la obra social por los servicios que le dió:
*Main> montoFacturacionDe "karl"
150
Consejo: usar las funciones del ej 1a y la que se muestra a continuación:
Y en 1a) definí esta función datosDe:
También se cuenta con los sigs. datos y funciones:
Luego de decir todo esto, lo que hice hasta ahora fue:
Mi problema es: como defino los argumentos de cuantoCuesta adentro del map? Ahi donde puse xxx yyy
Espero se entienda, gracias.
1b) Conocer el monto de facturación de un paciente, o sea, lo que el dentista le facturó a la obra social por los servicios que le dió:
*Main> montoFacturacionDe "karl"
150
Consejo: usar las funciones del ej 1a y la que se muestra a continuación:
cuantoCuesta obraSocial servicio ((obraSocial1, servicio1, costo):servicios) | obraSocial == obraSocial1 && servicio == servicio1 = costo
| otherwise = cuantoCuesta obraSocial servicio servicios
Y en 1a) definí esta función datosDe:
esElPaciente paciente (nombre,_,_,_) = paciente == nombre
datosDe paciente = (head . filter (esElPaciente paciente)) pacientes
También se cuenta con los sigs. datos y funciones:
pacientes = [("karl", (10,10,1993), "OSDE", ["Conducto", "Puente"]), ("achi", (18,11,1987), "Swiss Med", []), ("mike", (12,04,1978), "OSDE", ["Limpieza"])]
precios = [("OSDE", "Conducto", 100), ("OSDE", "Puente", 50), ("OSDE", "Limpieza", 50), ("Swiss Med", "Conducto", 30), ("Swiss Med", "Puente", 50), ("Swiss Med", "Limpieza", 50)]
paciente (p,_,_,_) = p
fechaNac (_,f,_,_) = f
obraSocial (_,_,os,_) = os
servicios (_,_,_,s) = s
anio (_,_,a) = a
Luego de decir todo esto, lo que hice hasta ahora fue:
obrSocPaciente = obraSocial . datosDe
servPaciente = servicios . datosDe
montoFacturacionDe paciente = sum (map (cuantoCuesta (obrSocPaciente paciente) XXX YYY) (servPaciente paciente))
Mi problema es: como defino los argumentos de cuantoCuesta adentro del map? Ahi donde puse xxx yyy
Espero se entienda, gracias.