Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Fundamentos de programación. Tema 7. Ejercicio 6.
//g++ 7.4.0 #include <iostream> #include <string> using namespace std; int main() { struct Persona { string nombre; int edad; }; const int MAX=5; Persona personas[MAX]={ {"Carlos", 6}, {"Ana", 3}, {"Beatriz",7}, {"Daniel Jesús", 12}, {"Estefanía", 9} }; Persona *ordenado_nombre[MAX], *ordenado_edad[MAX]; // Ordeno por nombre for( int i=0; i<MAX; ++i ) { ordenado_nombre[i]=&personas[i]; } for( int i=0; i<MAX-1; ++i ) { for( int j=i; j<MAX; ++j ) { if( ordenado_nombre[i]->nombre>ordenado_nombre[j]->nombre ) { Persona *aux=ordenado_nombre[i]; ordenado_nombre[i]=ordenado_nombre[j]; ordenado_nombre[j]=aux; } // if } // for int j } // for int i // Ordeno por edad for( int i=0; i<MAX; ++i ) { ordenado_edad[i]=&personas[i]; } for( int i=0; i<MAX-1; ++i ) { for( int j=i; j<MAX; ++j ) { if( ordenado_edad[i]->edad>ordenado_edad[j]->edad ) { Persona *aux=ordenado_edad[i]; ordenado_edad[i]=ordenado_edad[j]; ordenado_edad[j]=aux; } // if } // for int j } // for int i // Muestro en pantalla cout << "Ordenados por nombre: " << endl; for ( int i=0; i<MAX; ++i ) { cout << i+1 << ": " << ordenado_nombre[i]->nombre << " , " << ordenado_nombre[i]->edad << endl; } cout << endl; cout << "Ordenados por edad: " << endl; for ( int i=0; i<MAX; ++i ) { cout << i+1 << ": " << ordenado_edad[i]->nombre << " , " << ordenado_edad[i]->edad << endl; } cout << endl; }
run
|
edit
|
history
|
help
0
Throttle Example using a circular queue (Push all but 2 less than maxSize; then pop all but 2 of current size)
selection sort
Narrowing error
appliWall
CS1428 SI Tuesday
problem_name_1
Random values and probability distribution
mine
SimpleList Example
function returning a function demo