Você está na página 1de 4

Ejercicio:Urgencias

1. Enunciadodelproblema Se trata de disear un proyecto Java para simular el proceso del paso de pacientes por una unidad de urgencias de un Centro de Salud. Para ello se van a disear un conjunto de tipos (interfaces y clases) y de mtodos para gestionar a posteriori la informacin almacenada en distintosficherosdetexto.Estosficherostendrnlasiguienteestructura: 9,15,123415,MI766,1,9,30 9,15,123543,MI765,0,10,30 9,17,123734,TR454,2,9,30 10,15,123465,TR325,0,10,31 Cada lnea del fichero corresponde a un registro de actuacin en la unidad de emergencias y constadelossiguientesdatosporesteorden: Unenteroconlahoradeentradaoingreso.Entre0y23. Unenteroconelminutodeentradaoingreso.Entre0y59. UnenteroconelnmerodelaSeguridadSocialdelpacientetratado. Unacadenadecaracteresconelcdigodelfacultativoquelotrat. Unenterorepresentadolagravedaddelossntomas.0:Leve,1:Moderado,2:Grave. Unenteroconlahoradesalidaoalta.Entre0y23. Unenteroconelminutodesalidaoalta.Entre0y59 Sepidedisearlossiguientestiposymtodos. 2. TipoHora SenecesitadefiniruntipoHoraparamarcarlahorayminutodeingresooaltadeunpaciente. Eltipotendrlassiguientespropiedades: hora:detipoentero,consultable.Entre0y23. minuto:detipoentero,consultable.Entre0y59. Otraspropiedades: Representacincomocadena:[hora:minuto] Criteriodeigualdad:DosobjetosHorasernigualessicoincidenenhorayminuto Criterio de ordenacin: El natural, esto es, primero por hora y si son iguales por minuto. Otrosmtodosdeltipo: DiferenciaMinutos (Hora h). Devolver un entero con la diferencia en minutos entre el objeto que invoca y h. No se tendr en cuenta si h es o no anterior al objeto que invoca.

IntroduccinalaProgramacin

3. TipoIngreso El tipo Ingreso guarda los datos relativos a cada uno de los pacientes tratados en la Unidad de Urgencias.Suspropiedadesson: Horadeingreso,detipoHora.Consultable. Horadealta,detipoHora.Consultable.Debeserposterioralahoradeingreso. NmerodelaSeguridadSocial,detipoentero.Consultable. Cdigodelmdicoquetratlaurgencia,detipocadenadecaracteres.Consultable. Tipo de Urgencia, de tipo enumerado con tres posibles valores: LEVE, MODERADO, GRAVE.Consultable. Otraspropiedades: Representacincomocadena:{horadeingresonmerodelaSS} Criterio de igualdad: Dos objetos de tipo Ingreso sern iguales si coinciden en hora de ingresoynmerodelaSeguridadSocial. Criteriodeordenacin:PorhoradeingresoyencasodeigualdadpornmerodelaSS. 4. TipoUrgencias EltipoUrgenciasservirparatratartodoslosingresosdelasdistintasunidadesdeUrgenciade unmismocentrodeSalud.Suspropiedadessonlassiguientes: Da,detipoentero.Parasimplificarsupondremosunvalorentre1y30.Consultable. Mes,detipoentero.Parasimplificarsupondremosunvalorentre1y12.Consultable Conjuntoordenadodeingresosporsuordennatural,consultable. Otraspropiedades: Representacincomocadena: [dia/mes/2012:Conjuntodeingresos] Vamos a suponer que no hay ms de un objeto Urgencia por da y mes. Por tanto los criteriosdeigualdadyordenacinsernlosnaturalesapartirdemesyda. Otras funcionalidades. La clase debe tener mtodos para solucionar los siguientes apartados: a) b) c) d)

Cuntasurgenciasseatendieron? Obtenerlosmdicosimplicadosenlasurgenciasdeeseda. Obtenerunarelacindelnmerodepacientesqueatendicadamdico. Qu mdicos fueron los que atendieron al mayor nmero de pacientes? Para hacer este mtodo deber resolver antes el apartado c) de los mtodos de utilidad (Ejercicio 5deestedocumento). e) Dado un String con la palabra GRAVE, MODERADO o LEVE, cuntos ingresos ha habido deltipoespecificadoporelString.Nota:useelmtodovalueOfdeltipoenumerado. f) Qupacienteshanpasadoporurgenciasmsdeunavezeseda?

7.EjercicioUrgencias

g) Aquhorasseprodujeronmsurgencias? h) Obtener una lista con los ingresos ordenados por tiempo de consulta (diferencia entre lahoradealtayladebaja)demayoramenor. i) Escribirenunficherodetextolalistaanterior. j) Culfueelingresoquemstiempoestuvoenurgencias? 5. Mtodosdeutilidad DiseelossiguientesmtodosestticosenunaclasedeUtilidad. a) Un mtodo que dado el nombre de un fichero con la estructura anterior devuelva una List deobjetosIngreso.Compruebequelaestructuradelficherodetextoescorrectayquelahora deingresoesanterioraladealta.Sinolancelasoportunasexcepciones. b) Se le proporcionan con este enunciado dos ficheros de texto con la estructura comentada en el apartado 1. Estos ficheros contienen las urgencias atendidas durante un solo da por dos unidades de urgencia de un mismo centro de salud. Mediante el mtodo del apartado a) construya un nico objeto de tipo Urgencias que contenga la informacin de ingresos de ambosficheros. c) En el ejemplo 3 del Tema 5, se implemento un ejercicio que inverta un Map. Esto es, dado un Map el conjunto de valores pasa a ser el conjunto de claves y las claves a las que corresponde cada valor forman una List en el conjunto de valores. Vemoslo con el mismo ejemplo del Tema 5, el Map original estaba definido de claves Character y de valores Integer y relacionaba cada carcter con su frecuencia absoluta de aparicin. El Map inverso tiene como conjunto de claves un tipo Integer con la frecuencia, y como valor un List<Character> ya que dadounenteropodahabervarioscaracteresconlamismafrecuencia.PorejemplosielMap originalfuera: A 16 R P 12 9 D 7 F T SuMapinversoseraesteotro: 16 [A, R] 12 [P] [F] 9 [D,T] 7

IntroduccinalaProgramacin

Escriba un mtodo genrico para invertir un Map genrico y convertirlo en un SortedMap. Su cabecera: publicstatic<K,T>SortedMap<K,List<T>>invierteMap(Map<T,K>m);

Você também pode gostar