Dev - C++ - Mi programa no registra cuantas personas hay en el listado final

 
Vista:
sin imagen de perfil

Mi programa no registra cuantas personas hay en el listado final

Publicado por Nael (9 intervenciones) el 20/05/2022 06:32:45
Alguien me da la solución?

Se trata de registrar cuantas personas salieron y entraron del edificio y el programa debe tener un arreglo de dos dimensiones pero no supe agregarselo.

#include <iostream>
#include <esconu.h>


using namespace std;

int CuentaCaracteres (string texto);
void Centraliza (int linea, string texto);
void Encabezados (string texto);

int main()
{
BorraPantalla();

const int MAX_PISOS = 5;
const int MAX_APARTAMENTOS = 4;

int opcion, i;
int pisos[MAX_PISOS];
int apartamentos[MAX_APARTAMENTOS];
int apartamento, cantidadPersonas;
int piso;

for (i = 0; i < MAX_APARTAMENTOS; i++)
apartamentos[i] = 0;

for (i = 0; i < MAX_PISOS; i++)
pisos[i] = 0;

opcion = 0;
do
{
BorraPantalla();
Encabezados("Menú de Opciones");
cout << endl;
cout << " 1.- Registrar entrada" << endl;
cout << " 2.- Registrar salida" << endl;
cout << " 3.- Listar ocupacion" << endl;
cout << " -------------------------" << endl;
cout << " 4.- Terminar" << endl << endl;

cout << " Elija una opcion: ";
cin >> opcion;

switch (opcion)
{
case 1:
BorraPantalla();
Encabezados("Registrar entrada");

CoordenadaXY (22,8);
cout << "Apartamento (1 - " << MAX_APARTAMENTOS << "): ";
cin >> apartamento;

CoordenadaXY (22,10);
cout << "Digite piso ";
cin >> piso;

CoordenadaXY (22,12);
cout << "Personas 1-10 ";
cin >> cantidadPersonas;

pisos [1 - 5] += cantidadPersonas;

CoordenadaXY(23,23);
TeclaPresionada("Presione una tecla para continuar ");
break;

case 2:
BorraPantalla();
Encabezados("Registrar salida");

CoordenadaXY (22,8);
cout << "Apartamento (1 - " << MAX_APARTAMENTOS << "): ";
cin >> apartamento;

CoordenadaXY (22,10);
cout << "Digite piso ";
cin >> piso;

CoordenadaXY (22,12);
cout << "Cantidad de personas 1-10: ";
cin >> cantidadPersonas;

pisos [1 - 5] += cantidadPersonas;

CoordenadaXY(23,23);
TeclaPresionada("Presione una tecla para continuar ");
break;

case 3:
BorraPantalla();
Encabezados("Listar ocupacion");

Centraliza (8, " 1 2 3 4");
Centraliza (9, " --------------------------");
Centraliza (10, "Piso 5 |[ 0 ] [ 0 ] [ 0 ] [ 0 ]");
Centraliza (11, " --|-----------------------");
Centraliza (12, "Piso 4 |[ 0 ] [ 0 ] [ 0 ] [ 0 ]");
Centraliza (13, " --|-----------------------");
Centraliza (14, "Piso 3 |[ 0 ] [ 0 ] [ 0 ] [ 0 ]");
Centraliza (15, " --|-----------------------");
Centraliza (16, "Piso 2 |[ 0 ] [ 0 ] [ 0 ] [ 0 ]");
Centraliza (17, " --|-----------------------");
Centraliza (14, "Piso 1 |[ 0 ] [ 0 ] [ 0 ] [ 0 ]");

CoordenadaXY(23,23);
TeclaPresionada("Presione una tecla para continuar ");
break;


}

}while (opcion != 4);

cout << endl << endl;
BorraPantalla();
Centraliza (23, "Gracias por utilizar este programa");

return 0;
}



int CuentaCaracteres (string texto)
{
return texto.length();
}


void Centraliza (int linea, string texto)
{
int x;
x = (80 - CuentaCaracteres (texto)) / 2;
CoordenadaXY (x, linea);
cout << texto << endl;
}


void Encabezados (string texto)
{
ColorTexto (VERDE);
Centraliza (1, "Edificio Don Churumusco");

ColorFondoTexto (AMARILLOCLARO);
Centraliza (4, "Sistema de Salida y Entrada");
ColorFondoTexto (PREESTABLECIDO);

ColorTexto (AZUL);
Centraliza (6, texto);
ColorTexto (PREESTABLECIDO);

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Mi programa no registra cuantas personas hay en el listado final

Publicado por Alfil (1444 intervenciones) el 20/05/2022 10:50:31
Si he entendido bien el problema se trata de representar las viviendas que están ocupados y cuales no mediante una especie de grafico.

Si es así, tienes un error de concepto en el programa, debes hacerlo como una matriz donde cada fila es una planta y cada posición de esa fila (las columnas) son cada una de las viviendas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar