[C con Clase] Ayuda programa parqueadero
Cesar Cortes
ceslinx en gmail.com
Vie Abr 10 16:10:33 CEST 2009
Hola amigos tengo un problema con un programa de un parqueadero, el programa
debe realizar lo siguiente:
Es un menu de cinco opciones en donde la primera opcion me debe dejar
ingrsar las placas de 10 autos q ingresan a un parqueadero que solo tiene 10
cupos (las placas son un numero de 3 gigitos ej: 159)
el segundo caso me registra el boleto de una persona q ingresa a una sala de
cine (cada boleto q se registra es una persona q ingresa)
el tercer caso me pide el numero de la placa de un auto q quiera salir del
parqueadero si el numero coincide con una de las placas ingresadas en el
caso 1 me decuenta un auto del parqueadero
el 4 caso me muestra el numero de personas q han ingresado a la sala de cine
y el numero de autos que han salido,
Esto ya lo hize mi problema esta en que si yo saco 1 auto en el caso 3 y
quiero volver a ingresar un auto al parqueadero caso 1, el me deja volver a
ingresar 10 autos y el parqueadero solo tiene cupo para 10 autos no se como
hacer que me deje registrar autos solo cuando el parqueadero este con cupo
disponible.
adjunto el codigo fuente
Gracias
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20090410/55ce25e6/attachment.html>
------------ próxima parte ------------
/*
Name: Programa para registrar la salida de vehiculos y la entrada de personas
Author: Cesar cortes 80142368
Date: 14/03/09 08:53
Description: Laboratorio # 4 algoritmos
*/
#include <conio2.h>//aqui uso conio2 porque dev c++ no tiene esa libreria que es de turbo c++
#include <iostream.h>
#include <string.h>
using namespace std;
/*Tamaño máximo que puede tener la contraseña*/
#define MAX_TAM_PASSWORD 80
/*Contraseña por defecto*/
#define DEF_PASSWORD "cesar"
int main(void)
{
string password = DEF_PASSWORD;
int vecp [3];
int menu=0;
int conta=0;
int contp=0;
int bol=0;
int i=0;
int aur=0;
char nombre[5];
int numsale=0;
int dato=0;
string pass;
int a=0;
int j=0;
int contae=0;
int c=0;
clrscr();
cout<<"BIENVENIDO DIGITE LA CONTRASEÑA PARA INGRESAR \n";
cin >> pass;
if (pass != password)
{
cout<<" Digite una contraseña valida !!! \n";
getch();
}
else
{
while (menu!=5)
{
gotoxy(6,40);
cout<<" BIENVENIDO ";
gotoxy(6,42);
cout<<" (1) Registrar los autos en el parqueadero ";
gotoxy(6,44);
cout<<" (2) Registrar su boleto de entrada al cine ";
gotoxy(6,46);
cout<<" (3) Sacar autos del parqueadero ";
gotoxy(6,48);
cout<<" (4) cuantas personas entraron a cine y cantidad de vehiculos que salieron ";
gotoxy(6,50);
cout<<" (5) Salir ";
cin>>menu;
switch (menu) // Creo un switch para leer las 4 opciones del menu
{
case 1: { clrscr(); // en este case se deben ingresar las 10 placas de los autos yo lo tengo con solo 3 por prueba
cout<<"Por favor digite los tres numeros de la placa del auto que ingresa \n";
for (i=0;i<3;i++)
{
contae++;
}
cout<<"el numero de autos que ha ingresado es "<< contae <<endl;
getch();
break;
}
case 2: { clrscr(); // en este case por cada boleta que entre es una persona q ha ingresado
cout<<"Por favor ingrese el numero de su boleta de cine \n";
cin>>bol;
if (bol>=0)
{contp++;
cout<<"Su boleto ha sido registrado Gracias \n";
getch();
}
else
if (contp<0)
{cout<<"Por favor digite un boleto valido \n";
}
break;
}
case 3: { clrscr(); // en este case se debe digitar la placa del auto que va ha salir del parqueadero y comparar si coincide con las placas ingresadas
cout<<"Por favor digite los numeros de la placa del auto que va a salir \n";
cin>>numsale;
for(i=0;i<3;i++)
{
if (numsale==vecp[i])
{
dato=vecp[i];
conta++;
cout<<"El auto con la placa numero "<< dato << " ha salido \n";
getch();
vecp[i]=aur;
}
}
if (dato==0)
{ cout<<"La placa no existe \n";
getch();
}
break;
}
case 4: { clrscr(); // aqui se debe mostrar cuantas personas han ingresado a la sala de cine y cuantos autos han salido del parqueadero
cout<<" EL NUMERO DE PERSONAS QUE HAN INGRESADO A LA SALA DE CINE ES: "<< contp <<endl;
getch();
if (dato==0)
{ cout<<"No han salido autos \n";
getch();
}
else
{
// conta++;
cout<<"\n El numero de carros que han salido es "<< conta << endl;
getch();
}
break;
}
default:
{ cout<<"Ingrese una opcion validan por favor \n";
break;
}
}
}
}
}
Más información sobre la lista de distribución Cconclase