hola a todo el mundo tengo un codigo que acabo de empezarlo y de verdad no sé como implementar la idea que en Meter() al meter los datos del empleado me pregunte si quiero meter otro empleado (si/no) si (si) limipa la pantalla con cls si (no)
me guarda el empleado y me pinta el menu() eso viene en el meter()
aqui os dejo el codigo que es muy sencillo :
Código:
#include <iostream>
#include <cstdlib>
#include <conio.h>
#define MAX 1
using namespace std;
// Zona de Declaración de Constantes
// Zona de Declaración de Tipos
// Zona de Cabeceras de Procedimientos y Funciones
struct Persona
{
char apellidos[25];
char nombre[10];
char dni[9];
char edad[2];
int valido;
}Agenda[MAX];
char Menu();
bool ConfirmarSalir();
void Meter();
void Mostrar(void);
// Programa Principal
int main()
{
// Zona de Declaración de Variables del Programa principal
char op;
bool salir;
struct Persona d;
int x=0;
salir = false;
while (!salir)
{
op = Menu();
switch(op)
{
case 'A': Meter();
break;
case 'B': Mostrar();
break;
case 'C':
break;
case 'D':
break;
case 'E':
break;
case 'F': salir=ConfirmarSalir();
break;
default: cout << "Opción Incorrecta ... " << endl;
break;
}
system("Pause"); // Hacer una pausa
system("CLS"); // Borrar la Pantalla
}
return 0; // Valor de retorno al S.O.
}
// Implementación de Procedimientos y Funciones
char Menu()
{
char op;
cout << " MENU" << endl;
cout << " ====" << endl;
cout << " ---- " << endl;
cout << " ---- " << endl;
cout << " ---- " << endl;
cout << endl;
cout << "A. Meter persona" << endl;
cout << "B. Sacar persona" << endl;
cout << "C. Mostrar agenda" << endl;
cout << "D. Buscar persona" << endl;
cout << "E. Cuenta de puestos" << endl;
cout << "F. Salir" << endl;
cout << endl;
cout << "Introduzca Opción: ";
cin >> op;
cin.ignore(); // Ignoro el ENTER
op = toupper(op);
return op;
}
bool ConfirmarSalir()
{
char si_no;
cout << "¿Está Seguro/a (S/N)?" << endl;
cin >> si_no;
cin.ignore(); // Ignoro el ENTER
si_no = toupper(si_no);
return (si_no=='S');
}
void Meter()
{
char op='S'; //declaro op y la inicializo con 'S' para que entre al while()
int i=0; //declaro i para usarlo de subindice
while((op=='S') && (i<=MAX)) //mientras op sea igual a 'S' entre al ciclo
{
//con el while no hace falta poner el for() (en este ejemplo)
cout<<"Apellidos: "<<endl;
gets(Agenda[i].apellidos);
cout<<"Nombre: "<<endl;
gets(Agenda[i].nombre);
cout<<"Dni: "<<endl;
gets(Agenda[i].dni);
cout<<"Edad: "<<endl;
gets(Agenda[i].edad);
cout<<endl;
i++; //le sumo uno a i
cout<<"¿quieres ingresar otro empleado (S/N)?";
cin>>op; //si responde 'S' entra al while y pide nuevos datos
cin.ignore(); // Ignoro el ENTER
op = toupper(op);
}
//aqui no sé como hacerlo he intentado pero no funcciona como quiero me salta datos .......
if(op=='N')
{
}else
{
}
}
void Mostrar(void)
{
int i=0;
for( i=0;i<=MAX;++i)
{
cout<<"------ datos del empleado ------"<<endl;
cout<<("Apellidos: ",Agenda[i].apellidos);
cout<<endl;
cout<<("Nombre: ",Agenda[i].nombre);
cout<<endl;
cout<<("Dni: ",Agenda[i].dni);
cout<<endl;
cout<<("Edad: ",Agenda[i].edad)<<endl;
cout<<"--------------------------------"<<endl;
}
}
por favor ayudarme que tengo solo un mes en programacion c++ os lo agradezco

: