You are on page 1of 4

Base de Datos de Pacientes de una Consulta Médica Interdiciplinaria

Tarea N°3 de Lenguaje de Programación

24 de junio de 2010

1. Descripción del Problema


Debe crear un programa que maneje una Base de Datos de Pacientes de una Consulta Médica Interdiciplinaria.
La Base de Datos debe manejar una lista de clientes, junto a los siguientes datos:

ID de paciente
Primer Nombre

Segundo Nombre ( Opcional )


Primer Apellido
Segundo Apellido ( Opcional )
Fecha de Nacimiento

Rut
Teléfono ( Código también si es necesario ).
Dirección

Además, se deben manejar diferentes médicos y especialistas:

ID profesional
Nombre
Primer Apellido

Segundo Apellido
Especialidad
Costo consulta

Rut

1
Número del Colegio Médico ( Sólo si es médico )

Por cada Paciente se debe guardar un registro de cada consulta hecha, de la siguiente manera:

ID consulta

ID de paciente
ID de profesional
Fecha
Diagnóstico

Estado Pago

Cada uno de los Tres Tipos de Datos debe poder ser ingresado por Consola. En otras palabras, deben implementar
métodos que permitan ingresar Pacientes, Profesionales y Consultas. Para esto, deben crear una Interfaz en la
Consola que permita elegir el tipo de dato a ingresar, y sus respectivas caracterı́sticas. También deben permitir,
sólo para el caso de Pacientes, el ingreso de estos leyendo un archivo de texto que contengan los datos a ingresar.
Esto es para facilitar el ingreso masivo de pacientes. A continuación se muestra un ejemplo del archivo a leer, con
solo DOS pacientes. Se denotan los saltos de lı́nea con \n , para mayor compresión.

________________________________
Laura\n
Alejandra\n
Hormazabal\n
Castro\n
01-02-2003\n
20000000-2\n
84231023\n
Los Naranjos, 2053. Concepcion.\n
Pedro\n
\n
Cerda\n
\n
02-10-1985\n
15999000-3\n
041-2315322\n
O’Higgins, 2532. Talcahuano.\n
________________________________

Note que el segundo sujeto no posee Segundo Nombre ni Segundo Apellido. Debe permitir esa flexibilidad en su
Programa.
Deben usar sólo un archivo binario para almacenar a los profesionales, un sólo archivo binario para pacientes, y
un sólo archivo binario para las consultas.
Debe crear estructuras para manejar el sistema.

2
El programa deberá permitir a un usuario ingresar pacientes, profesionales, y consultas. También deberá realizar
búsquedas de pacientes y profesionales por RUT, Nombre y/o Apellido; y búsqueda de consultas asociadas a un
Profesional o a un Paciente. Cada búsqueda debe devolver todos los datos personales del tipo de sujeto a buscar.
Debe permitir pagar consultas no canceladas. Esto significa que deben permitir que un usuario edite las consultas,
cambiando el valor de la variable Estado Pago de No Pagado a Pagado.

2. Condiciones Generales
El programa debe utilizar sólo ANSI C. Esto quiere decir, que no está permitido el uso de bibliotecas NO-
ESTÁNDAR (Por ejemplo: conio.h ). Puede implementar cualquier función necesaria para el desarrollo del Proyecto.
Para facilitar la implementación, suponga que un paciente se puede atender con un único profesional en un área en
especı́fico (Por ejemplo: sólo se atendió y se atenderá con la Matrona Marı́a Fernanda López).
Los archivos binarios generados y/o modificados deberán perdurar al cierre del programa. La idea es poder
acceder a la información en cualquier momento, y no perderla, por ejemplo, al apagar el equipo o al cerrar el
programa. Esa es la idea de una Base de Datos.

3. Consultas a Implementar
1. Buscar a un paciente por RUT. Debe devolver tanto sus datos personales como sus consultas. Si no existe
paciente con ese RUT, debe indicar que no existe ningún paciente con ese RUT.
2. Buscar un paciente por Nombre. Se debe listar un número de posibles candidatos que coincidan con el nombre
escrito. El usuario podrá escoger el indicado de la lista, y el programa deberá mostrar tanto sus datos personales
como sus consultas asociadas.
3. Buscar un paciente por Apellido. Se debe listar un número de posibles candidatos que coincidan con el
apellido escrito. El usuario podrá escoger el indicado de la lista, y el programa deberá mostrar tanto sus datos
personales como sus consultas asociadas.

4. Buscar un paciente por Nombre y Apellido. Se debe listar un número de posibles candidatos que coincidan con
el nombre y apellido escritos. El usuario podrá escoger el indicado de la lista, y el programa deberá mostrar
tanto sus datos personales como sus consultas asociadas.
5. Buscar un profesional por RUT. Se debe mostrar sus datos personales y una lista de pacientes a los que ha
atendido.

6. Buscar un profesional por Nombre y/o Apellido. Debe mostrar una lista de opciones que coincida con el
Nombre y/o Apellido, y debe permitir al usuario escoger de la lista el indicado, y mostrar sus datos personales
y una lista de pacientes a los que ha atendido.
7. Buscar un médico por Número de Registro en el Colegio Médico. Debe mostrar sus datos personales y una
lista de pacientes a los que ha atendido.
8. Para un paciente, mostrar la última consulta que realizó con un profesional en especı́fico.
9. Para un paciente, mostrar la última consulta hecha en un área especı́fica. ( Por ejemplo: Oftalmologı́a. )

3
En estas consultas, si no existe ningún elemento con el criterio de búsqueda, se debe indicar en la Interfaz del
programa. Además, en la lista de opciones, solo deben mostrar los datos más básicos. Por ejemplo, si se busca un
paciente por Apellido: Soto, deberán mostrar el Primer Apellido, el Segundo Apellido, el Primer Nombre y el RUT
de cada paciente que coincida con los criterios de búsqueda. Para este ejemplo, se pueden obtener Apellidos como
Soto, Sotomayor, Sotomonte, etc.
Para todo lo descrito en esta sección y en las anteriores, deberán idear una Interfaz en Consola que permita de
manera cómoda ingresar los datos pedidos y buscar datos requeridos. Esta debe ser parte de su programa, y puede
ser implementada como una serie de Menús con opciones tanto para ingresar datos, como para buscar dentro de la
Base de Datos.

4. Evaluación
Se evaluarán las siguientes temáticas:

1. Código:
Uso de Estructuras.
Lectura de Archivos de Texto.
Lectura de Archivos Binarios.
Escritura de Archivos Binarios.
Uso de Punteros.
Código Ordenado.
Código Comentado.
Recomendación: Usar un IDE.
2. Informe:
Portada
Introducción
Objetivos
Desarrollo del Proyecto
Conclusión
Comentarios
Bibliografı́a
3. Presentación
Se deberá mostrar el código, y como fue el proceso de Diseño y Desarrollo del Proyecto.
Se deberá compilar, y mostrar el uso del Programa desarrollado.
Se deberá responder preguntas acerca del funcionamiento del programa, y de algunas soluciones.
Deben responder Preguntas de los Contenidos Involucrados en el Proyecto.

You might also like