[ Foro de Pascal ]

Hola me podrian ayudar con este ejercicio xfa

25-Jun-2022 19:31
Eudis Centeno
1 Respuestas

Una empresa líder en servicios de transporte turísticos y convencionales (taxis, limosinas, autobuses, aviones y helicópteros), debido al crecimiento turístico en el país ha experimentado un alza en la demanda de sus servicios y un crecimiento inesperado de clientes, lo que ha llevado a la empresa a tomar la decisión de optimizar y automatizar la solicitud y reservas de servicios por parte de sus clientes. La empresa desea tener un sistema que permita a sus clientes solicitar sus servicios de diferentes manera, sin limitaciones de lugar o medios de solicitud,
• Tener control de los clientes habituales de la empresa tanto individuales como corporativos
• Tener seguimiento de los nuevos clientes
• Agilizar la asignación de choferes o pilotos para ejecutar los servicios
• Llevar el control del personal disponible como de la flotilla de la empresa
La empresa presta servicios a escala nacional y hasta algunos parajes turísticos de América Latina, Puerto Rico, Curazao, Aruba, etc. Siendo prioridad de la empresa el correcto funcionamiento para Venezuela, Aruba y Curazao.
Actualmente se maneja la solicitud de servicios vía telefónica y con un registro manual de los mismos. Para clientes individuales se manejan datos como nombre, C.I., edad, empresa donde trabaja, dirección del trabajo, teléfono de la oficina, dirección de habitación, teléfono de habitación, Celular, email. Para clientes corporativos se maneja: nombre de la empresa, persona de contacto, teléfono, RIF, dirección, NIT. Para ambos tipos de clientes se manejan los datos del último servicio solicitado y el responsable del último servicio prestado.
Del servicio prestado se registra: tipo de servicio (taxi, avión, etc.), fecha del servicio, hora, origen, destino, responsable del servicio, número de personas, presupuesto, fecha de la solicitud, persona de contacto.


25-Jun-2022 19:32
Eudis Centeno

soy nuevo en esto y he logrado hacer solo una parte del problema, osea el programa que hice lo unico que hace es mostrar los datos y creo que no estoy cumpliendo todo lo especificado en el problema me podrian ayudar xfa quiero asignar choferes e ir guardando todos los datos de los clientes pero nose como hacerlo.
esto es lo que hice

Program automatizacion;

Uses crt;

Var
opcion : char;
opcion3 : integer;
i : integer;
select:integer;

Type
datos = Record
  //datos chofer
  apellidoEmp: string[10];
  nombEmp: string[20];
  cedulaEmp: String[10];
  vehiculoEmp: string[10];
  cargoEmp: string[10];
  act: string[10];
  //cliente corporativo
  nombrecorp: String[10];
  apellidocorp: string[10];
  nombEmpre: string[10];
  personaContac: string[10];
  telefono: string[20];
  rif: string[10];
  nit: string[10];
  ultimoServ: string[10];
  //cliente individual
  nombreInd: string[10];
  apellidoInd: string[10];
  cedulaInd: string[10];
  nombEmpInd: string[10];
  direccionEmpInd: string[10];
  edadInd: String[10];
  telefonoOfiInd: string[10];
  direccionHabiInd: string[10];
  telefonoHabiInd: string[10];
  email: string[30];

// Datos de servicio
  responsable: string[10];
  vehiculo: string[10];
  fechaServ: string[10];
  horaServ: string[10];
  destino: string[10];
  numPersonas: String[100];
  presupuesto: string[10];
  fechaSoli: string[10];
  personaContac2: string[10];

End;


Var
vector: array[1..10] Of datos;



Begin

writeln('**************Agencia de Viajes Explorando el Mundo con Sheyla Eudis y johan**************');
writeln('');
writeln('**************Si eres nuevo Cliente indica que tipo corporativo o individual**************');
writeln('');
writeln(' 1. Corportativos ');
writeln(' 2. Individuales ');
writeln;
writeln('---------------------------');
writeln;
writeln(' Personal ');
writeln(' 3. Choferes');
writeln;
writeln('Ingrese una opcion valida:');
opcion := readkey;


clrscr;

Case opcion Of
  '1':
       Begin
         writeln('+++Ingresar nuevo cliente corportativo:');
         writeln('');
         For i:=1 To 1 Do
           Begin
             writeln('Nombre: ',i,' ');
             readln(vector[i].nombrecorp);
             writeln('Apellido: ',i,' ');
             readln(vector[i].apellidocorp);
             writeln('RIF:',i,'');
             readln(vector[i].rif);
             writeln('NIT:',i,'');
             readln(vector[i].nit);
             writeln('Nombre de empresa',i,'');
             readln(vector[i].nombEmpre);
             writeln('Persona de Contacto: ',i,'');
             readln(vector[i].personaContac2);
             writeln('Telefono: ',i,'');
             readln(vector[i].telefono);
             writeln('Ultimo servicio: ',i,'');
             readln(vector[i].ultimoServ);
             clrscr;
             writeln;
             writeln('Datos sobre el ultimo servicio');
             writeln;
             writeln('Responsable: ',i,'');
             readln(vector[1].responsable);
             writeln('Vehiculo: ',i,'');
             readln(vector[1].vehiculo);
             writeln('Fecha de Servicio: ',i,'');
             readln(vector[1].fechaServ);
             writeln('Hora de Servicio: ',i,'');
             readln(vector[1].horaServ);
             writeln('Destino: ',i,'');
             readln(vector[1].destino);
             writeln('Numero de Personas: ',i,'');
             readln(vector[1].numPersonas);
             writeln('Presupuesto: ',i,'');
             readln(vector[1].presupuesto);
             writeln('Fecha de Solicitud: ',i,'');
             readln(vector[1].fechaSoli);
             writeln('Persona de Contacto: ',i,'');
             readln(vector[1].personaContac2);
             writeln;
             clrscr;
           End;

         clrscr;
         writeln(' ');
         writeln('Datos del cliente corporativo');
         writeln('');
          writeln('cuantos clientes desea agregar');
          readln(select);
         For i:=1 To select Do
           Begin
             writeln('Nombre: ',i,vector[i].nombrecorp);
             writeln('Apellido: ',i,vector[i].apellidocorp);
             writeln('RIf: ',i,vector[i].rif);
             writeln('NIT: ',i,vector[i].nit);
             writeln('Nombre de la empresa: ',i,vector[i].nombEmpre);
             writeln('Persona de contacto: ',i,vector[i].personaContac);
             writeln('Ultimo Servicio',i,vector[1].ultimoServ);

             writeln;
             writeln('Datos sobre el ultimo servicio');
             writeln;
             writeln('Responsable: ',i,vector[i].responsable);
             writeln('Vehiculo: ',i,vector[i].Vehiculo);
             writeln('Fecha de Servicio: ',i,vector[i].fechaServ);
             writeln('Hora de Servicio: ',i,vector[i].horaServ);
             writeln('Destino: ',i,vector[i].destino);
             writeln('Numero de Personas: ',i,vector[i].numPersonas);
             writeln('Presupuesto: ',i,vector[i].presupuesto);
             writeln('Fecha de Solcitud: ',i,vector[i].fechaSoli);
             writeln('Persona de contacto: ',i,vector[i].personaContac2);

           End;


       End;
  //case 1

  '2': //case 2
       Begin
         writeln('+++Ingresar nuevo cliente individual:');
         writeln('');
         For i:=1 To 1 Do
           Begin
             writeln('Nombre: ',i,' ');
             readln(vector[i].nombreInd);
             writeln('Apellido: ',i,' ');
             readln(vector[i].apellidoInd);
             writeln('Cedula:',i,'');
             readln(vector[i].cedulaInd);
             writeln('Donde Trabaja',i,'');
             readln(vector[i].nombEmpInd);
             writeln('Direccion de donde trabaja: ',i,'');
             readln(vector[i].direccionEmpInd);
             writeln('Telefono: ',i,'');
             readln(vector[i].telefonoOfiInd);
             writeln('Direccion de Habitacion: ',i,'');
             readln(vector[i].direccionHabiInd);
             writeln('telefono de Habitacion: ',i,'');
             readln(vector[i].telefonoHabiInd);
             writeln('Email: ',i,'');
             readln(vector[i].email);
             writeln;

             clrscr;
             writeln;
             writeln('Datos sobre el ultimo servicio');
             writeln;
             writeln('Responsable: ',i,'');
             readln(vector[1].responsable);
             writeln('Vehiculo: ',i,'');
             readln(vector[1].vehiculo);
             writeln('Fecha de Servicio: ',i,'');
             readln(vector[1].fechaServ);
             writeln('Hora de Servicio: ',i,'');
             readln(vector[1].horaServ);
             writeln('Destino: ',i,'');
             readln(vector[1].destino);
             writeln('Numero de Personas: ',i,'');
             readln(vector[1].numPersonas);
             writeln('Presupuesto: ',i,'');
             readln(vector[1].presupuesto);
             writeln('Fecha de Solicitud: ',i,'');
             readln(vector[1].fechaSoli);
             writeln('Persona de Contacto: ',i,'');
             readln(vector[1].personaContac2);
             writeln;
             clrscr;

             writeln(' ');
             writeln('Datos del cliente infdividual');
             writeln('');

             //   For i:=1 To 1 Do

             Begin
               writeln('Nombre: ',i,vector[i].nombreInd);
               writeln('Apellido: ',i,vector[i].apellidoInd);
               writeln('Cedula: ',i,vector[i].cedulaInd);
               writeln('Nombre de la empresa: ',i,vector[i].nombEmpInd);
               writeln('Direccion de la empresa: ',i,vector[i].direccionEmpInd);
               writeln('Edad: ',i,vector[1].edadInd);
               writeln('Telefono de Oficina: ',i,vector[1].telefonoOfiInd);
               writeln('Direccion de Habitacion: ',i,vector[1].direccionHabiInd);
               writeln('Telefono de Habitacion: ',i,vector[1].telefonoHabiInd);
               writeln('Email: ',i,vector[1].email);
               writeln;
               writeln;
               writeln('Datos sobre el ultimo servicio');
               writeln;
               writeln('Responsable: ',i,vector[i].responsable);
               writeln('Vehiculo: ',i,vector[i].Vehiculo);
               writeln('Fecha de Servicio: ',i,vector[i].fechaServ);
               writeln('Hora de Servicio: ',i,vector[i].horaServ);
               writeln('Destino: ',i,vector[i].destino);
               writeln('Numero de Personas: ',i,vector[i].numPersonas);
               writeln('Presupuesto: ',i,vector[i].presupuesto);
               writeln('Fecha de Solcitud: ',i,vector[i].fechaSoli);
               writeln('Persona de contacto: ',i,vector[i].personaContac2);

             End;



           End;
       End;

  //case 2

  '3':

       Begin

         writeln('+++CHOFERES Y PERSONAL+++');
         writeln('');
         writeln(' 1. Ingresar Personal');
         writeln(' 2. Salir');
         readln(opcion3);

         If opcion3 = 1 Then
           Begin
             writeln('+++Agregar Personal+++');
             writeln('');
             For i:=1 To 1 Do
               Begin
                 writeln('Nombre: ',i,' ');
                 readln(vector[i].nombEmp);
                 writeln('Apellido: ',i,' ');
                 readln(vector[i].apellidoEmp);
                 writeln('Cedula:',i,'');
                 readln(vector[i].cedulaEmp);
                 writeln('Vehiculo:',i,'');
                 readln(vector[i].vehiculoEmp);
                 writeln('Cargo:',i,'');
                 readln(vector[i].act);
               End;
             clrscr;
             writeln('Datos del Empleado Agregados: ');
             writeln('');
             writeln;
             For i:=1 To 1 Do
               Begin
                 writeln('Nombre: ',vector[i].nombEmp);
                 writeln('Apellido: ',vector[i].apellidoEmp);
                 writeln('Cedula: ',vector[i].cedulaEmp);
                 writeln('Vehiculo: ',vector[i].vehiculoEmp);
                 writeln('Cargo: ',vector[i].cargoEmp);
                 writeln('Activo en la empresa: ',i,vector[i].act);
               End
           End
         Else
           clrscr;
         Begin

           writeln('Usted eligio cerrar el programa');
           halt(0);
         End;


         // case 3
       End;
End;


End.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)