elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Ayuda con un programa en borland c++ en: 16 Diciembre 2018, 22:19 pm
Código
  1.  
Código
  1.  
[/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
  1.  
/img]
Código
  1. [code=cpp][/code=c++]
[/code]
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines