Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Llivi

#1
Código (cpp) [Seleccionar]
Código (cpp) [Seleccionar]
[/img]Necesito hacer un programa con menu sub-menu... que me permita ingresar empleados, consultar empleados y cargas familiares como menu principal, en sub-menu de cargas familiares ingresar cargas por empleado, consultar cargas y regresar al menu anterior, en sub menu de consulta de empleado, ver todos los empleados consultar individual, regresar al menu anterior... tambien hay que poner informacion del empleado y de las cargas esto es lo que he avanzado pero no se que mas le falta y me salen varios errores porfa ayuda es en borland c++
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

  /*ESTRUCTURAS*/
  struct empleado
  {

   char cedula[10];
   char apellido[25];
   char nombre[25];
   char direccion[50];
   char telefono[10];
   double sueldo;
   char estado;
   empleado *siguiente;
   };


   struct empleado_cargas_familiares
   {
    char cedula[10];
    char apellido[25];
    char nombre[25];
    int edad;
    char parentezco;
    empleado_cargas_familiares *siguiente;
    };

    /*PROTOTIPO DE FUNCIONES*/
    int vaciar1 (empleado**);
    int vaciar2 (empleado_cargas_familiares**);

    void insertarEmpleado(empleado**,char[],char[],char[],char[],char[],double,char);
    void insertarCargasFamiliares(empleado_cargas_familiares**,char[],char[],char[],int,char);

    void mostrarEmpleado(empleado**);
    void mostrarCargasFamiliares(empleado_cargas_familiares**);


    void main()
    {
       empleado *cab=NULL;
     empleado_cargas_familiares *cab2=NULL;

     /*VARIABLES UTILIZADAS EN EL MENU*/
     int  opcion,edad;
     char cedula[10],apellido[25],nombre[25],direccion[50],telefono[10],estado,parentezco;
     double sueldo;

       do
       {
         cout<<"\n *** MENU PRINCIPAL ***"<<endl;
         cout<<"1.Ingreso de empleados"<<endl;
         cout<<"2.Consulta de empleados"<<endl;
         cout<<"3.Carga familiares"<<endl;
         cout<<"4.Salir"<<endl;
         cout<<"-Elija una opcion: "<<endl;
         cin>>opcion;

         switch(opcion)
         {
          case 1:
                  clrscr();
                cout<<"**INGRESO DE EMPLEADOS**"<<endl;
                /*id*/
                cout<<"-Ingrese su # de CI:"<<endl;
                   cin>>cedula;
                cout<<"-Ingrese su apellido:"<<endl;
                   cin>>apellido;
                cout<<"-Ingrese su nombre:"<<endl;
                   cin>>nombre;
                cout<<"-Ingrese su direccion domiliciaria"<<endl;
                   cin>>direccion;
                cout<<"-Ingrese su # de telef.:"<<endl;
                   cin>>telefono;
                cout<<"-Ingrese su sueldo:"<<endl;
                   cin>>sueldo;
                cout<<"-Ingrese su estado:"<<endl;
                cout<<"1.A = activo:"<<endl;
                cout<<"2.I = inactivo:"<<endl;
                   cin>>estado;

                 if (estado=='A')
                 {
                   cout<<"A";
                 }
                 else
                 {
                   cout<<"I";
                 }

                 insertarEmpleado(&cab,cedula,apellido,nombre,direccion,telefono,sueldo,estado);
                 cout<<"LOS DATOS FUERON INGRESADOS..";
                 getch();
                 break;

          case 2:
                clrscr();
                do
                {
                cout<<"**CONSULTA DE EMPLEADOS**"<<endl;
                cout<<"---SUBMENU---"<<endl;
                cout<<"1.Ver todos los empleados"<<endl;
                /*cout<<"2.Consultar individual"<<endl;*/
                cout<<"3.Regresar"<<endl;
                cout<<"-Ingrese se opcion:"<<endl;
                cin>>opcion;

                switch(opcion)
                {
                  case 1:
                       clrscr();
                       mostrarEmpleado(&cab);
                       getch();
                       break;

                  /*case 2:
                       clrscr();

                          break; */
                      }
                     }while(opcion!=3);


           case 3:
                clrscr();
                do
                {
                cout<<"**CARGAS FAMILIARES**"<<endl;
                cout<<"---SUBMENU---"<<endl;
                cout<<"1.Ingreso de cargas"<<endl;
                cout<<"2.Consultas de cargas"<<endl;
                cout<<"3.Regresar"<<endl;
                cout<<"-Ingrese se opcion:"<<endl;
                cin>>opcion;

                switch(opcion)
                {
                  case 1:
                       clrscr();
                       cout<<"**INGRESO DE CARGAS FAMILIARES**"<<endl;
                       /*id*/
                         cout<<"-Ingrese su # de CI:"<<endl;
                            cin>>cedula;
                         cout<<"-Ingrese su apellido:"<<endl;
                            cin>>apellido;
                         cout<<"-Ingrese su nombre:"<<endl;
                            cin>>nombre;
                         cout<<"-Ingrese su edad"<<endl;
                            cin>>edad;
                         cout<<"-Ingrese su parentezco:"<<endl;
                       cout<<"1.E = esposa:"<<endl;
                       cout<<"2.H = hijo-hija:"<<endl;
                       cout<<"3.P = padre:"<<endl;
                       cout<<"4.M = madre:"<<endl;
                            cin>>parentezco;

                       insertarCargasFamiliares (&cab2,cedula,apellido,nombre,edad,parentezco);
                       cout<<"LOS DATOS FUERON INGRESADOS..";
                       getch();
                       break;

                  case 2:
                       clrscr();
                        mostrarCargasFamiliares(&cab2);
                        getch();
                         break;
                       }
                     }while(opcion!=3);


                }while(opcion!=4)

              }

               /*FUNCIONES*/
               /*VACIAR EMPLEADO*/
               int vaciar1(empleado **cab)
               {
                 if(*cab==NULL)
                    return 1;
                 else
                    return 0;
               }

               /*VACIAR CARGAS FAMILIARES*/
               int vaciar2(empleado_cargas_familiares **cab2)
               {
                 if(*cab2==NULL)
                    return 1;
                 else
                    return 0;
               }


                /*INSERTAR EMPLEADO MENU*/
               void insertarEmpleado(empleado **cab,char c[10],char a[25],char n[25],char d[50],char t[10],double s,char e)
               {
               empleado* nuevo_nodo=NULL;

               if(vaciar1(&cab))
               {
                 nuevo_nodo=new empleado();
                 /*id*/
                 nuevo_nodo->cedula[10]=c[10];
                 nuevo_nodo->apellido[25]=a[25];
                 nuevo_nodo->nombre[25]=n[25];
                 nuevo_nodo->direccion[50]=d[50];
                 nuevo_nodo->telefono[10]=t[10];
                 nuevo_nodo->sueldo=s;
                 nuevo_nodo->estado=e;
                 nuevo_nodo->siguiente=NULL;
                 *cab=nuevo_nodo;
               }
               else
               {
               nuevo_nodo=new empleado();
               /*id*/
                 nuevo_nodo->cedula[10]=c[10];
                  nuevo_nodo->apellido[25]=a[25];
                 nuevo_nodo->nombre[25]=n[25];
                 nuevo_nodo->direccion[50]=d[50];
                 nuevo_nodo->telefono[10]=t[10];
                 nuevo_nodo->sueldo=s;
                 nuevo_nodo->estado=e;
                 nuevo_nodo->siguiente=*cab;
                 *cab=nuevo_nodo;
               }
              }


              /*PARA OPCION DE SUBMENU VER TODOS LOS EMPLEADOS*/
               void mostrarEmpleado(empleado **cab)
               {
                empleado *aux=NULL;
                if(vaciar1(&cab))
                cout<<"COLA VACIA";
                else{
                    aux=*cab;
                    while(aux!=NULL)
                    {
                     /*ID*/
                     cout<<"# de CI.:"<<aux->cedula[10]<<endl;
                     cout<<"Apellido:"<<aux->apellido[25]<<endl;
                     cout<<"Nombre:"<<aux->nombre[25]<<endl;
                     cout<<"Direccion:"<<aux->direccion[50]<<endl;
                     cout<<"Telefono:"<<aux->telefono[10]<<endl;
                     cout<<"Sueldo:"<<aux->sueldo<<endl;
                     cout<<"Estado:"<<aux->estado<<endl;
                      aux=aux->siguiente;
                     }
                    }
                }


                /*PARA OPCION DE SUBMENU VER TODOS LAS CARGAS FAMILIARES*/
                void mostrarCargasFamiliares(empleado_cargas_familiares **cab2)
               {
                empleado_cargas_familiares *aux=NULL;
                if(vaciar2(&cab2))
                {
                cout<<"COLA VACIA";
                }
                else{
                    aux=*cab2;
                    while(aux!=NULL)
                    {
                     /*ID*/
                     cout<<"# de CI.:"<<aux->cedula[10]<<endl;
                     cout<<"Apellido:"<<aux->apellido[25]<<endl;
                     cout<<"Nombre:"<<aux->nombre[25]<<endl;
                     cout<<"Edad:"<<aux->edad<<endl;
                     cout<<"Parentezco:"<<aux->parentezco<<endl;
                      aux=aux->siguiente;
                     }
                    }
                }



               /*INGRESAR DATOS PARA SUBMENU DE CARGAS FAMILIARES*/
               void insertarCargasFamiliares(empleado_cargas_familiares **cab2,char c[10],char a[25],char n[25],int e,char p)
               {
               empleado_cargas_familiares* nuevo_nodo=NULL;

               if(vaciar2(&cab2))
               {
                 nuevo_nodo=new empleado_cargas_familiares();
                 /*id*/
                 nuevo_nodo->cedula[10]=c[10];
                 nuevo_nodo->apellido[25]=a[25];
                 nuevo_nodo->nombre[25]=n[25];
                 nuevo_nodo->edad=e;
                 nuevo_nodo->parentezco=p;
                 nuevo_nodo->siguiente=NULL;
                 *cab2=nuevo_nodo;
               }
               else
               {
               nuevo_nodo=new empleado_cargas_familiares();
               /*id*/
                 nuevo_nodo->cedula[10]=c[10];
                 nuevo_nodo->apellido[25]=a[25];
                 nuevo_nodo->nombre[25]=n[25];
                 nuevo_nodo->edad=e;
                 nuevo_nodo->parentezco=p;
                 nuevo_nodo->siguiente=*cab2;
                 *cab2=nuevo_nodo;
               }
              }
          }
      }
  }
Código (cpp) [Seleccionar]
/img][code=cpp][/code=c++][/code]