Título: Organizacion de una agenda-----ayuda------los demas datos no se mueven Publicado por: *n3cr0* en 10 Noviembre 2015, 00:23 am #include <iostream>
#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
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; } |