#include <iostream>
using namespace std;
const int plantas=6;
const int habitaciones=10;
// Utilizamos un vector bidimensional para almacenar las plantas del hotel y las habitaciones.
int main ()
{
int hotel [plantas][habitaciones],vector[plantas], i, j;
bool correcto;
for (i=0;i<plantas;i++)
{
for(j=0;j<habitaciones;j++)
{
do {
//Introducimos el número de ocupantes de cada habitación.
cout<<"Introduzca el numero de ocupantes de la habitacion "<<j+1<<" de la planta "<<i+1<<endl;
correcto=true;
cin>>hotel[j];
// Comprobaciones para ver si el numero de ocupantes es correcto.
if(i<plantas-1)
{
if (((j+1)%2==0)&& ((hotel[j]>1) || (hotel[j]<0)))
{
correcto=false;
}
if (((j+1)%2==1) && ((hotel[j]>2)|| (hotel[j]<0)))
{
correcto=false;
}
}
else
{
if (((j+1)%2==0)&&((hotel[j]>2)||(hotel[j]<0)))
{
correcto=false;
}
if (((j+1)%2==1) && ((hotel[j]>3)||(hotel[j]<0)))
{
correcto=false;
}
}
} while (correcto==false);
}
}
// Mostramos por pantalla las habitaciones con sus ocupantes.
cout<<"La distribucion de plantas es la siguiente:"<<endl;
cout<<"Habitacion: ";
for (j=0;j<habitaciones;j++)
{
cout<<j<<" - ";
}
cout<<endl;
for(i=plantas;i>0;i--)
{
cout<<"Planta"<<i<<": ";
for (j=0;j<habitaciones;j++)
{
cout<<hotel[i-1][j]<<" - ";
}
cout<<endl;
}
system ("pause");
return 0;
}
Gracias por la ayuda prestada
De momento, este programa funciona correctamente, necesite algo de ayuda porque no tenía ni idea de como mostrar por pantalla las plantas del 1 al 6, ya que las posiciones de la matriz venian dadas del 0 al 5. Lo que ahora necesito hacer es esto:
Se sabe que la habitación simple cuesta 75€, la doble 100€ y la cama
adicional tiene un recargo del 15%. Calcular y almacenar (en un array con
la misma estructura que la creada para almacenar la ocupación del hotel) el
precio que se tiene que pagar por cada habitación. Mostrar por pantalla
esta información de forma similar a cómo se mostró la ocupación del hotel.
Tengo unas 4 horas para entregarlo, espero que alguien me heche un cable con un guión.
Un saludo y gracias chicos!
PD: el mensaje anterior no lo escribí yo, obviamente si se como se muestra un dato por pantalla
using namespace std;
const int plantas=6;
const int habitaciones=10;
// Utilizamos un vector bidimensional para almacenar las plantas del hotel y las habitaciones.
int main ()
{
int hotel [plantas][habitaciones],vector[plantas], i, j;
bool correcto;
for (i=0;i<plantas;i++)
{
for(j=0;j<habitaciones;j++)
{
do {
//Introducimos el número de ocupantes de cada habitación.
cout<<"Introduzca el numero de ocupantes de la habitacion "<<j+1<<" de la planta "<<i+1<<endl;
correcto=true;
cin>>hotel[j];
// Comprobaciones para ver si el numero de ocupantes es correcto.
if(i<plantas-1)
{
if (((j+1)%2==0)&& ((hotel[j]>1) || (hotel[j]<0)))
{
correcto=false;
}
if (((j+1)%2==1) && ((hotel[j]>2)|| (hotel[j]<0)))
{
correcto=false;
}
}
else
{
if (((j+1)%2==0)&&((hotel[j]>2)||(hotel[j]<0)))
{
correcto=false;
}
if (((j+1)%2==1) && ((hotel[j]>3)||(hotel[j]<0)))
{
correcto=false;
}
}
} while (correcto==false);
}
}
// Mostramos por pantalla las habitaciones con sus ocupantes.
cout<<"La distribucion de plantas es la siguiente:"<<endl;
cout<<"Habitacion: ";
for (j=0;j<habitaciones;j++)
{
cout<<j<<" - ";
}
cout<<endl;
for(i=plantas;i>0;i--)
{
cout<<"Planta"<<i<<": ";
for (j=0;j<habitaciones;j++)
{
cout<<hotel[i-1][j]<<" - ";
}
cout<<endl;
}
system ("pause");
return 0;
}
Gracias por la ayuda prestada
De momento, este programa funciona correctamente, necesite algo de ayuda porque no tenía ni idea de como mostrar por pantalla las plantas del 1 al 6, ya que las posiciones de la matriz venian dadas del 0 al 5. Lo que ahora necesito hacer es esto:
Se sabe que la habitación simple cuesta 75€, la doble 100€ y la cama
adicional tiene un recargo del 15%. Calcular y almacenar (en un array con
la misma estructura que la creada para almacenar la ocupación del hotel) el
precio que se tiene que pagar por cada habitación. Mostrar por pantalla
esta información de forma similar a cómo se mostró la ocupación del hotel.
Tengo unas 4 horas para entregarlo, espero que alguien me heche un cable con un guión.
Un saludo y gracias chicos!
PD: el mensaje anterior no lo escribí yo, obviamente si se como se muestra un dato por pantalla