Codigo C++ Practicando :)
Codigo C++ Practicando :)
Codigo C++ Practicando :)
#include <iomanip>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#define max 20
using namespace std;
//estructura
struct trabajador
{
int clave;
char nombre[max];
float sueldobruto;
float descuento;
float bonificacion;
float sueldoneto;
};
//prototipos
int menu();
int buscarcod(trabajador A[],int n,int codigo);
void capturadedatos(trabajador A[],int &n);
void mostrarReporte(trabajador A[],int n);
void busquedaxnom(trabajador A[],int n);
void orden(trabajador A[],int n);
void ordenasueldo(trabajador A[],int n);
void modificaDato(trabajador A[],int n);
int main ()
{
trabajador tra[max];
int n,op;
do
{
system("cls");
op=menu();
switch(op)
{
case 1:capturadedatos(tra,n);
getche();break;
case 2:mostrarReporte(tra,n);
getche();break;
case 3:busquedaxnom(tra,n);
getche();break;
case 4:orden(tra,n);
getche();break;
case 5:ordenasueldo(tra,n);
getche();break;
case 6: modificaDato(tra,n);
getche();break;
}while(op!=7);
system("cls");
cout<<"GRACIAS POR USAR ESTA APLICACION"<<endl;
getche();
return(0);
}
do
{
do
{
cout<<"DIgite el codigo del trabajador["<<n+1<<"]: ";
cin>>A[n].clave;
}while(A[n].clave<0);
p=buscarcod(A,n,A[n].clave);
if(p==-1)
{
cout<<"Ingrese el nombre del trabajador["<<n+1<<"]: ";
fflush(stdin);
gets(A[n].nombre);
do
{
cout<<"Ingrese sueldo bruto: ";
cin>>A[n].sueldobruto;
}while(A[n].sueldobruto<0);
}while(op!=0);
system("cls");
cout<<"Trabajadores ingresados con exito....!"<<endl;
int i;
cout<<setw(37)<<"REPORTE"<<endl;
cout<<setw(37)<<"*******"<<endl;
cout<<setw(5)<<"CODIGO"<<setw(14)<<"NOMBRE"<<setw(14)<<"S.BRUTO"<<setw(14)<<"DESCUENTO"<<se
tw(14)<<"BONIFICACION"<<setw(10)<<"S.NETO"<<endl;
for(i=0;i<n;i++)
{
cout<<setw(5)<<A[i].clave<<setw(14)<<A[i].nombre<<setw(14)<<A[i].sueldobruto<<setw(14)<<A[i]
.descuento<<setw(14)<<A[i].bonificacion<<setw(10)<<A[i].sueldoneto<<endl;
}
cout<<endl;
for(i=0;i<n;i++)
{
total=total+A[i].sueldobruto;
total1=total1+A[i].descuento;
total2=total2+A[i].bonificacion;
total3=total3+A[i].sueldoneto;
}
cout<<setw(5)<<"TOTALES"<<setw(13)<<"****"<<setw(13)<<total<<setw(13)<<total1<<setw(14)<<to
tal2<<setw(10)<<total3<<endl;
}
if(strcmp(A[i].nombre,nom)==0)
{
aux=1;
cout<<"Trabajador encontrado...."<<endl;
cout<<endl<<endl;
cout<<"NOMBRE: "<<A[i].nombre<<endl;
cout<<"SUELDO BRUTO: "<<A[i].sueldobruto<<endl;
cout<<"BONIFICACION: "<<A[i].bonificacion<<endl;
cout<<"DESCUENTO: "<<A[i].descuento<<endl;
cout<<"SUELDO NETO: "<<A[i].sueldoneto<<endl;
}
if(aux!=1)
{
cout<<"NO EXISTE AQUEL TRABAJADOR"<<endl;
}
}while(op!=0);
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(strcmp(A[i].nombre,A[j].nombre)>0)//aplicando metodo burbuja
{
strcpy(temp,A[i].nombre);
strcpy(A[i].nombre,A[i+1].nombre);
strcpy(A[i+1].nombre,temp);
}
}
}
cout<<setw(15)<<"NOMBRE DE TRABAJADORES ORDENADOS ALFABETICAMENTE"<<endl;
cout<<setw(15)<<"*********************************"<<endl;
for(i=0;i<n;i++)
{
cout<<setw(15)<<i+1<<"."<<A[i].nombre<<endl;
}
//ordena los sueldos netos de los trabajadores ingresados con respecto a sus sueldos netos
void ordenasueldo(trabajador A[],int n)
{
system("cls");
int i,j;
float temp;
cout<<"ORDENADO POR SUELDO NETO DE LOS TRABAJADORES....!"<<endl;
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)//usando metodo burbuja
{
if(A[i].sueldoneto>A[j].sueldoneto)
{
temp=A[i].sueldoneto;
A[i].sueldoneto=A[j].sueldoneto;
A[j].sueldoneto=temp;
}
}
}
for(i=0;i<n;i++)
{
cout<<"\t["<<i+1<<"]."<<A[i].nombre<<"===> "<<A[i].sueldoneto<<endl;
}
int i,aux,op,cod,p,rpta;
char nom[max];
system("cls");
do
{
system("cls");
}while(cin>>A[i].clave<0);break;
case 2:
cout<<"Nuevo nombre: ";
fflush(stdin);
gets(A[i].nombre); break;
case 3:
do
{
cout<<"Nuevo sueldo bruto: ";
cin>>A[i].sueldobruto;
}while(A[i].sueldobruto<0);break;
}
}while(op<1||op>4);
}
else
{
cout<<"Codigo no encontrado.....!"<<endl;
}
}
//funcion para mostrar el menu en pantalla
int menu()
{
int op;
do
{
system("cls");
cout<<"\t\tMENU"<<endl;
cout<<"\t\t****"<<endl;
cout<<"\t1.Captura datos"<<endl;
cout<<"\t2.Mostrar Reporte"<<endl;
cout<<"\t3.Busqueda por nombre"<<endl;
cout<<"\t4.Ordena alfabetico"<<endl;
cout<<"\t5.Ordena sueldo neto"<<endl;
cout<<"\t6.Modificar campos"<<endl;
cout<<"\t7.SALIR"<<endl;
cout<<"\tESCOJA UNA OPCION [ ]"<<"\b\b";
cin>>op;
}while(op<1||op>7);
return op;
}