Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Caso Hotel Programación
Caso Hotel Programación
Estando próximos al feriado por fiestas patrias y viendo la demanda insatisfecha que
sufrió nuestra región, el dueño del hotel turístico ”El Trotamundo” desea reinventar
la forma de brindar sus servicios para ello se encuentra preparando sus
instalaciones para recibir aproximadamente 150 clientes, por tal motivo desea se el
implemente un programa que le ayuda a gestionar mejor sus servicios.
Los clientes pueden elegir entre 4 tipos de habitaciones (suite, matrimonial, doble,
simple), cada una consta de servicios diferentes, así como costos según la tabla
adjunta
Además,puede hacer uso de sus servicios adicionales los cuales no están incluidos
en el descuento por reservación anticipada,dichos servicios son:
● Alquiler de auto a S/.80.00 por día
● Una sesión en el SPA cuyo costo es de S/.120.00
● Un City Tours de S/.50.00 por persona
1. Información General
2. Informe de huéspedes
3. Ingresos obtenidos por servicios adicionales
4. Estadística General
5. Salir
1. Información General
El programa debe de mostrar el nombre del cliente, el género, la cantidad
de habitaciones reservadas , cantidad de días a hospedarse, el monto
total a pagar y el descuento obtenido
2. Información de Huéspedes
➔ Cantidad de clientes que hicieron reservación
➔ Cantidad de clientes femeninos que realizaron la reservación
➔ Cantidad de clientes masculinos que realizaron la reservación
➔ Cantidad de clientes que se encuentren entre 31 a 40 años de edad
➔ Cantidad de clientes que se encuentren entre 20 a 30 años de edad
3. Ingresos obtenidos por servicios Adicionales
➔ Monto total recaudado por alquiler de vehículos
➔ Monto total recaudado por sesión en el spa
➔ Monto total recaudado por el city tours
4. Estadística General
➔ Monto total recaudado por reservación anticipada
➔ Monto total de los descuentos brindados por reservación anticipada
➔ Monto total recaudado por clientes de 31 a 40 años de edad
➔ Monto total recaudado por clientes de genero femenino
➔ Monto total recaudado por clientes de género masculino
➔ Monto total recaudado por las habitaciones tipo suite
➔ Monto total recaudado por las habitaciones tipo matrimonial
➔ Monto total recaudado por las habitaciones tipo doble
➔ Monto total recaudado por las habitaciones tipo simple
➔ Monto total recaudado
CÓDIGO DE SOLUCIÓN
#include<iostream>
using namespace std;
int main()
{
int op,dni,edad,gen,th,ch,dia,mes;
string nom;
int cd,sa,c=0,cf=0;
int cm=0,cetc=0;
int cevt;
float desc,mpsd,mpcd,mpsa;
float mpdesc,mtap,mpav=0;
float mpss=0,mpct=0,mtra=0;
float mtdra=0/;
float mtctc=0,mtgf=0;
float mtgm=0;
float mthsu=0,mthm=0;
float mthd=0,mthsi=0,mtr=0;
do
{
cout<<"....................................................."<<endl;
cout<<"HOTEL TURISTICO EL TROTAMUNDO"<<endl;
cout<<"1. Informacion General"<<endl;
cout<<"2. Informe de Huespedes"<<endl;
cout<<"3. Ingresos por servicios adicionales"<<endl;
cout<<"4. Estadistica general"<<endl;
cout<<"5. Salir "<<endl;
cout<<"......................................................"<<endl;
cout<<"elegir opcion (1-5): ";
cin>>op;
switch(op)
{
case 1:
{
cout<<"Reservaciones restantes: "<<150-c<<endl;
c++;
if(c<150)
{
cout<<"Ingrese su nombre: ";
cin>>nom;
do{
cout<<"Ingrese su numero de DNI: ";
cin>>dni;
}
while(dni<0);
do
{
cout<<"Ingrese su edad: ";
cin>>edad;
}
while(edad<18||edad>100);
if(edad<=40&&edad>=31)
{
cetc=cetc+1;
}
if(edad<=30&&edad>=20)
{
cevt=cevt+1;
}
do
{
cout<<"Ingrese el dia de reservacion (1-30): ";
cin>>dia;
}
while(dia>30||dia<1);
do
{
cout<<"Ingrese el mes de reservacion (1-12): ";
cin>>mes;
}
while(mes>12||mes<1);
do
{
cout<<"Ingrese su genero (Masculino 1-
Femenino 2): ";
cin>>gen;
}
while(gen!=1&&gen!=2);
if(gen==2)
{
cf=cf+1;
}
if(gen==1)
{
cm=cm+1;
}
do
{
cout<<"................................................."<<endl;
cout<<" Ingrese tipo de habitacion:"<<endl;
cout<<"1. Suite (250.00)(dscto 10%)"<<endl;
cout<<"2. Matrimonial (180.00)(dscto
12%)"<<endl;
cout<<"3. Doble (120.00)(dscto 13%)"<<endl;
cout<<"4. Simple (100.00)(dscto
12.5%)"<<endl;
cout<<"......................................................"<<endl;
cout<<"elegir opcion (1-4): ";
cin>>th;
}
while(th!=4&&th!=1&&th!=2&&th!=3);
do
{
cout<<"Ingrese la cantidad de habitaciones:
";cout<<endl;
cin>>ch;
}
while(ch<0);
do{
cout<<"Ingrese la cantidad de dias a
hospedarse: ";cout<<endl;
cin>>cd;
}
while(cd<0);
do
{
cout<<"................................................."<<endl;
cout<<"Ingrese servicio adicional:"<<endl;
cout<<"1. Alquiler de auto ($80.00 por
dia)"<<endl;
cout<<"2. Una sesion de SPA
($120.00)"<<endl;
cout<<"3. Un City tours ($50.00 por
persona)"<<endl;
cout<<"4. Ninguna"<<endl;
cout<<".................................................."<<endl;
cout<<"elegir opcion (1-4): ";
cin>>sa;
}
while(th!=4&&th!=1&&th!=2&&th!=3);
cout<<"Monto a pagar(sin descuento): $";
if(dia<=15&&mes<=6)
{
if(th==1)
{
mpsd=250.00*ch*cd;
desc=10;
mpdesc=mpsd*(10.00/100.00);
}
if(th==2)
{
mpsd=180.00*ch*cd;
desc=12;
mpdesc=mpsd*(12.00/100.00);
}
if(th==3)
{
mpsd=120.00*ch*cd;
desc=13;
mpdesc=mpsd*(13.00/100.00);
}
if(th==4)
{
mpsd=100.00*ch*cd;
desc=12.5;
mpdesc=mpsd*(12.50/100.00);
}
}
else
{
desc=0;
mpdesc=0;
if(th==1)
{
mpsd=250.00*ch*cd;
}
if(th==2)
{
mpsd=180.00*ch*cd;
}
if(th==3)
{
mpsd=120.00*ch*cd;
}
if(th==4)
{
mpsd=100.00*ch*cd;
}
}
cout<<mpsd<<endl;
cout<<"Descuento: "<<desc<<"% =>
$"<<mpdesc<<endl;
mpcd=mpsd-mpdesc;
mtdra=mtdra+mpdesc;
cout<<"Monto a pagar(con descuento):
$"<<mpcd<<endl;
if(sa==1)
{
mpsa=80.00*cd;
mpav=mpav+mpsa;
}
if(sa==2)
{
mpsa=120.00;
mpss=mpss+mpsa;
}
if(sa==3)
{
mpsa=50.00*ch;
mpct=mpct+mpsa;
}
if(sa==4)
{
mpsa=0.00;
}
if(desc==0)
{
mtra=mtra;
}
else
{
mtra=mtra+mpcd;
}
cout<<"Monto por servicio adicional: $"<<mpsa<<endl;
mtap=mpsa+mpcd;
cout<<"Monto total a pagar: $"<<mtap<<endl;
if(edad<=40&&edad>=31)
{
mtctc=mtctc+mtap;
}
if(gen==2)
{
mtgf=mtgf+mtap;
}
if(gen==1)
{
mtgm=mtgm+mtap;
}
if(th==1)
{
mthsu=mthsu+mtap;
}
if(th==2
){
mthm=mthm+mtap;
}
if(th==3
){
mthd=mthd+mtap;
}
if(th==4)
{
mthsi=mthsi+mtap;
}
mtr=mtr+mtap;
}
else
{
cout<<"Lo siento se acabaron las reservaciones";
}
break;
}
case 2:
{
cout<<"Cantidad de clientes que hicieron reservacion:
"<<c<<endl;
cout<<"Cantidad de clientes femeninos que hicieron
reservacion: "<<cf<<endl;
cout<<"Cantidad de clientes masculinos que hicieron
reservacion: "<<cm<<endl;
cout<<"Cantidad de clientes que se encuentren entre 31 a 40
años de edad: "<<cetc<<endl;
cout<<"Cantidad de clientes que se encuentren entre 20 a 30
años de edad: "<<cevt<<endl;
break;
}
case 3:{
cout<<"Monto total obtenido por Alquiler de Vehiculos:
"<<mpav<<endl;
cout<<"Monto total obtenido por Sesion en el SPA:
"<<mpss<<endl;
cout<<"Monto total obtenido por City Tours: "<<mpct<<endl;
break;
}
case 4:{
cout<<"Monto total recaudado por reservacion anticipada:
"<<mtra<<endl;
cout<<"Monto total de los descuentos brindados por
reservacion anticipada: "<<mtdra<<endl;
cout<<"Monto total recaudado por clientes de 31 a 40 años de
edad: "<<mtctc<<endl;
cout<<"Monto total recaudado por clientes de genero
femenino: "<<mtgf<<endl;
cout<<"Monto total recaudado por clientes de genero
masculino: "<<mtgm<<endl;
cout<<"Monto total recaudado por las habitaciones tipo Suite:
"<<mthsu<<endl;
cout<<"Monto total recaudado por las habitaciones tipo
Matrimonial: "<<mthm<<endl;
cout<<"Monto total recaudado por las habitaciones tipo Doble:
"<<mthd<<endl;
cout<<"Monto total recaudado por las habitaciones tipo
Simple: "<<mthsi<<endl;
cout<<"Monto total recaudado: "<<mtr<<endl;
break;
}
case 5:{
break;
}
default:{
cout<<"Opcion Incorrecta";
cout<<"Vuelva a intentarlo";
}
}
}
while(op!=5);