#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#define max 20
using namespace std;
struct departamento
int clave;
float extension;
char ubicacion[max];
float precio;
int disponible;
};
int menu();
int busxcod(departamento depa[],int n,int codigo);
void ingresaDato(departamento depa[],int &n);
void precioReferen(float &p, float &e);
void listarDisponible(departamento depa[],int n,float p);
void listarDisponible2(departamento depa[],int n,float e);
void mostrarDepas(departamento depa[],int n);
int main ()
departamento depa[max];
int op,n;
float p,e;
do
{
system("cls");
op=menu();
switch(op)
case 1:
ingresaDato(depa,n);
getche();break;
case 2:
precioReferen(p,e);
getche();break;
case 3:
listarDisponible(depa,n,p);
getche();break;
case 4:
listarDisponible2(depa,n,e);
getche();break;
case 5:mostrarDepas(depa,n);
getche();break;
}while(op!=6);
system("cls");
cout<<"GRACIAS POR USA ESTA APLICACION....!"<<endl;
getche();
return(0);
int busxcod(departamento depa[],int n,int codigo)
int i,pos;
pos=-1;
for(i=0;i<n;i++)
if(depa[i].clave==codigo)
pos=i;
return pos;
void ingresaDato(departamento depa[],int &n)
system("cls");
int op,p,d;
n=0;
do
cout<<"Digite la clave del departamento ["<<n+1<<"]: ";
cin>>depa[n].clave;
p=busxcod(depa,n,depa[n].clave);
if(p==-1)
cout<<"Digite la extension del departamento["<<n+1<<"]: ";
cin>>depa[n].extension;
cout<<"Digite la ubicacion del departamento ["<<n+1<<"]: ";
fflush(stdin);
gets(depa[n].ubicacion);
cout<<"Digite el precio del departamento ["<<n+1<<"]: ";
cin>>depa[n].precio;
cout<<"Digite si esta disponible el departamento["<<n+1<<"]----> Si[1]/No[0]: ";
cin>>depa[n].disponible;
n++;
}
else
cout<<"ERROR, EL CODIGO YA EXISTE"<<endl;
cout<<"\nHay mas productos por ingresar?si[1]-no[0]: ";
cin>>op;
}while(op!=0);
void precioReferen(float &p,float &e)
system("cls");
cout<<"Digite el precio de referencia 'p': ";
cin>>p;
cout<<"Digite la superficie de referencia 'E':"<<endl;
cin>>e;
cout<<"\nREFERENCIAS INGRESAS CON EXITO....!"<<endl;
void listarDisponible(departamento depa[],int n,float p)
system("cls");
int i,d;
cout<<"DEPARTAMENTOS DISPONIBLES"<<endl;
cout<<endl<<endl;
cout<<setw(10)<<"CODIGO"<<setw(10)<<"UBICACION"<<setw(10)<<"PRECIO"<<endl;
cout<<setw(10)<<"******"<<setw(10)<<"*********"<<setw(10)<<"******"<<endl;
cout<<endl;
for(i=0;i<n;i++)
if(depa[i].disponible==1&&p>=depa[i].precio)
{
cout<<setw(10)<<depa[i].clave<<setw(10)<<depa[i].ubicacion<<setw(10)<<depa[i].precio<<setw(1
0)<<endl;
void listarDisponible2(departamento depa[],int n,float e)
system("cls");
int i,d,p,aux;
cout<<"DEPARTAMENTOS DISPONIBLES "<<endl;
cout<<endl<<endl;
cout<<setw(15)<<"CODIGO"<<setw(15)<<"UBICACION"<<setw(15)<<"EXTENION"<<endl;
cout<<setw(15)<<"******"<<setw(15)<<"*********"<<setw(15)<<"********"<<endl;
cout<<endl<<endl;
for(i=0;i<n;i++)
if(depa[i].disponible==1&&depa[i].extension>=e)
aux=1;
cout<<setw(15)<<depa[i].clave<<setw(15)<<depa[i].ubicacion<<setw(15)<<depa[i].extension<<set
w(15)<<endl;
void mostrarDepas(departamento depa[],int n)
system("cls");
int i;
cout<<setw(40)<<"DEPARTAMENTOS"<<endl;
cout<<setw(40)<<"*************"<<endl;
cout<<setw(15)<<"CODIGO"<<setw(15)<<"EXTENSION"<<setw(15)<<"UBICACION"<<setw(15)<<"P
RECIO"<
<endl;
cout<<setw(15)<<"******"<<setw(15)<<"*********"<<setw(15)<<"*********"<<setw(15)<<"**
****"<
<endl;
cout<<endl<<endl;
for(i=0;i<n;i++)
cout<<setw(15)<<depa[i].clave<<setw(15)<<depa[i].extension<<setw(15)<<depa[i].ubicacion<<set
w(15)<<depa[i].precio<<endl;
int menu()
int op;
do
system("cls");
cout<<"\tMENU"<<endl;
cout<<"\t****"<<endl;
cout<<"1.Ingresar informacion de departamentos"<<endl;
cout<<"2.Ingresar referencias"<<endl;
cout<<"3.Mostrar departamentos disponiblescon precio <= a P"<<endl;
cout<<"4.Mostrar departamentos disponibles con superficie >= a E + ubicacion
excelente"<<endl;
cout<<"5.Listar el monto de la renta de todos los departamentos alquilados"<<endl;
cout<<"6.SALIR"<<endl;
cout<<"ESCOJA UNA OPCION [ ]"<<"\b\b";
cin>>op;
}while(op<1||op>6);