#include <stdlib.h>
using namespace std;
void datosEntrada();
void imprecion();
void menu();
int ord,aux;
char res;
int salario[3];
struct datos
{
string nombre;
float cat;
float antiguedad;
float diastra;
float pagoDia;
};
struct datos agenda[3];
void menu()
{
datosEntrada();
imprecion();
}
void datosEntrada()
{
for (int i = 0; i < 3; ++i)
{
cout << " ingresa nombre del trabajador: \n > ";
cin>>(agenda.nombre);
cin.ignore(256,'\n'); //borrador de buffer
cout <<" ingresa la categoria del trabajador: \n > ";
cin >>(agenda.cat);
cout <<" ingresa la antiguedad del trabajador: \n > ";
cin >>(agenda.antiguedad);
cout <<" ingresa los dias que laboro el trabajador: \n > ";
cin >>(agenda.diastra);
cout << " ingrese el pago por dia: \n > ";
cin>>agenda.pagoDia;
system("clear"); //borra la pantalla
}
}
void imprecion()
{
cout<< "como desea ordenar los resultados: ";
cout<< "\n 2. Por Categoria \n 3. Por la antiguedad \n 4. Por los dias que trabajo \n 5. Por dia \n 6. Por sueldo total \n >";
cin>>ord;
switch(ord)
{
case 2:
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
if (agenda[j].cat > agenda[j + 1].cat)
{
aux = agenda[j].cat;
agenda[j].cat = agenda[j+1].cat;
agenda[j+1].cat = aux;
}
}
}
cout << " los elementos del arreglo son: "<<endl;
for (int k = 0; k < 3; ++k)
{
salario[k] = agenda[k].diastra * agenda[k].pagoDia;
cout << " dato " << k <<endl;
cout << "con la categoria: " << agenda[k].cat <<endl;
cout << agenda[k].nombre << " tiene un sueldo total de: " << salario[k] <<endl;
//cout << "con la categoria: " << agenda[k].cat <<endl;
cout << "con la antigedad de: " << agenda[k].antiguedad <<endl;
cout << "con los dias trabajados de: " << agenda[k].diastra <<endl;
cout << "con un pago por dia de: " << agenda[k].pagoDia <<endl;
cout<<endl;
cin.ignore().get(); //pausa el programa
}
break;
case 3:
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
if (agenda[j].antiguedad > agenda[j + 1].antiguedad)
{
aux = agenda[j].antiguedad;
agenda[j].antiguedad = agenda[j+1].antiguedad;
agenda[j+1].antiguedad = aux;
}
}
}
cout << " los elementos del arreglo son: "<<endl;
for (int k = 0; k < 3; ++k)
{
salario[k] = agenda[k].diastra * agenda[k].pagoDia;
cout << " dato " << k <<endl;
cout << "con la antigedad de: " << agenda[k].antiguedad <<endl;
cout << agenda[k].nombre << " tiene un sueldo total de: " << salario[k] <<endl;
cout << "con la categoria: " << agenda[k].cat <<endl;
cout << "con los dias trabajados de: " << agenda[k].diastra <<endl;
cout << "con un pago por dia de: " << agenda[k].pagoDia <<endl;
cout<<endl;
cin.ignore().get(); //pausa el programa
}
break;
case 4:
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
if (agenda[j].pagoDia > agenda[j + 1].diastra)
{
aux = agenda[j].diastra;
agenda[j].diastra = agenda[j+1].diastra;
agenda[j+1].diastra = aux;
}
}
}
cout << " los elementos del arreglo son: "<<endl;
for (int k = 0; k < 3; ++k)
{
salario[k] = agenda[k].diastra * agenda[k].pagoDia;
cout << " dato " << k <<endl;
cout << "con los dias trabajados de: " << agenda[k].diastra <<endl;
cout << agenda[k].nombre << " tiene un sueldo total de: " << salario[k] <<endl;
//salario = agenda[k].diastra * agenda[k].pagoDia;
cout << "con la categoria: " << agenda[k].cat <<endl;
cout << "con la antigedad de: " << agenda[k].antiguedad <<endl;
cout << "con un pago por dia de: " << agenda[k].pagoDia <<endl;
cout<<endl;
cin.ignore().get(); //pausa el programa
}
break;
case 5:
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
if (agenda[j].pagoDia > agenda[j + 1].pagoDia)
{
aux = agenda[j].pagoDia;
agenda[j].pagoDia = agenda[j+1].pagoDia;
agenda[j+1].pagoDia = aux;
}
}
}
cout << " los elementos del arreglo son: "<<endl;
for (int k = 0; k < 3; ++k)
{
salario[k] = agenda[k].diastra * agenda[k].pagoDia;
cout << " dato " << k <<endl;
cout << "con los dias trabajados de: " << agenda[k].diastra <<endl;
cout << agenda[k].nombre << " tiene un sueldo total de: " << salario[k] <<endl;
cout << "con la categoria: " << agenda[k].cat <<endl;
cout << "con la antigedad de: " << agenda[k].antiguedad <<endl;
cout << "con un pago por dia de: " << agenda[k].pagoDia <<endl;
cout<<endl;
cin.ignore().get(); //pausa el programa
}
break;
case 6:
for (int o = 0; o < 3; ++o)
{
salario
- = agenda
- .diastra * agenda
- .pagoDia;
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
if (salario[j] > salario [j+1])
{
aux = salario[j];
salario[j] = salario[j+1];
salario[j+1] = aux;
}
}
}
cout << " los elementos del arreglo son: "<<endl;
for (int k = 0; k < 3; ++k)
{
cout << " dato " << k <<endl;
cout << agenda[k].nombre << " tiene un sueldo total de: " << salario[k] <<endl;
cout << "con los dias trabajados de: " << agenda[k].diastra <<endl;
cout << "con la categoria: " << agenda[k].cat <<endl;
cout << "con la antigedad de: " << agenda[k].antiguedad <<endl;
cout << "con un pago por dia de: " << agenda[k].pagoDia <<endl;
cout<<endl;
cin.ignore().get(); //pausa el programa
}
break;
}
}
int main()
{
menu();
cout << "desea continuar [S/n]"<<endl;
cin>>res;
while (( res == 's') || res == 'S'){
system("clear");
menu();
}
cout << " adios tio ";
cout<<endl;
return 0;
}