Trabajo colaborativo 2 Estructura de datos
Enviado por smith77 • 26 de Septiembre de 2015 • Informe • 1.092 Palabras (5 Páginas) • 470 Visitas
TRABAJO COLABORATIVO N° 2
ESTRUCTURA DE DATOS
DEIVIS SMITH MARTINEZ
1.100.688.794
PRESENTADO A: HERMES MOSQUERA
CURSO: 301305_48
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD”
ESCUELA BASICA DE INGENIERIA Y TECNOLOGIA
2013
SUPUESTO SEMANTICO
El administrador del hotel SANTAFE ha solicitado de nuestros servicios, ya que debido a la cantidad de gente que llega a su hotel, le es muy difícil y dispendioso estar de habitación en habitación mirando si está ocupada y llevar esto en los libros a veces hace muy demorada la recepción de los huéspedes. Es por ello que él desea un programa que le administre las habitaciones y así le diga cuales están ocupadas para no ocuparlas de nuevo.
Captura de requerimientos:
Para lo cual se detectan las siguientes necesidades:
a. Las necesidades relatadas por los funcionarios de la recepción del hotel
- Es necesario que el sistema controle que habitaciones están ocupadas.
- Se debe controlar que si una habitación ya esta asignada no se debe volver a un otro cliente.
b. Necesidades detectadas por parte del analista de sistemas:
- Es necesario además de lo anteriormente expuesto que el hotel pueda determinar o controlar las
- Habitaciones que se encuentran reservadas con anterioridad.
- Adicionalmente se debe tener en cuanta el tiempo que estarán reservadas las habitaciones para así poder realizar reservas después de que entes las habitaciones terminen la reserva.
PORTADA
[pic 2]
MENU
[pic 3]
void Insertar(struct Habitaciones **entero, int dato) //FUNCION INSERTAR
{
struct Habitaciones *auxiliar, *Puntero, *anterior; // tres punteros para la manipulacion de los datos entrantes
auxiliar = new Habitaciones;
if(!auxiliar)
{
gotoxy(26,3);cout<<" HOTEL SANTAFE"<
gotoxy(20,6);cout<<"ERROR:MEMORIA INSUFICIENTE"<
exit(1);
}
auxiliar->dato = dato;
anterior = NULL; // anterior apunta a null
Puntero = *entero; //puntero apunta a entero
while((Puntero != NULL) && (Puntero->dato < dato)) //mientras puntero diferente de null y dato menor que dato aga
{
anterior = Puntero; // puntero = a null
Puntero = Puntero->sig; // aumenta el puntero en 1
}
if(anterior == NULL)
{
auxiliar->sig = *entero;
*entero = auxiliar;
}
else
{
anterior->sig = auxiliar;
auxiliar->sig = Puntero;
}
}
ASIGNANDO HABITACIONES
[pic 4]
void Buscar(struct Habitaciones **entero, int dato) //FUNCION BUSCAR
{
struct Habitaciones *Puntero; //puntero para axeder al contenido de la estructura
Puntero = *entero;
if (Puntero == NULL) //si el puntero esta bacio salta ala siguientes instrucciones
...