Esercizio c++ “persone più giovani”

di Anonimizzato18500 il
6 risposte
Salve a tutti, sono nuovo nel forum (e alle prime armi con c++), devo risolvere questo esercizio, sono riuscito ad impostare la prima parte del struct e degli input dei dati ma non riesco a capire come trovare le persone più giovani.
Testo esercizio :
"Scrivere un programma che legge n struct persona (n inserito dall'utente, n <= 10) con due campi, cognome ed eta’, rispettivamente di tipo stringa (di “tipo C”, di lunghezza massima 50) e di tipo numero intero, le memorizza (obbligatoriamente) in un array p di elementi di tipo persona, e quindi restituisce il nome della/e persona/e più giovane/i (n.b. restituire il nome di tutte le persone che risultano “più giovani”)."
Vi ringrazio.
Di seguito pubblico il codice che ho scritto:

#include <iostream>
using namespace std;
struct persona {
char cognome[50];
int eta;
};
int main(){

persona p ;
int n;
int MAX ;
cout << "Quante persone vuoi immettere (max 10)?" ;
cin >> n;
if (n>10 || n<=0)
{
cout <<"Errore! Quante persone vuoi immettere (max 10)?" ;
cin >> n ;
}
for ( int a=0; a<n ;a++){
cout <<"Immetti il cognome:";
cin >> p.cognome;
cout << "Immetti l'eta':" ;
cin >> p.eta;
}
return 0;
}

6 Risposte

  • Puoi ordinare l'array per età e visualizzare i primi nomi con valore più piccolo
  • Grazie per la risponda, ma non ho idea di come si fa
  • Questo è un problema ...

    Non avete fatto gli ordinamenti?
  • Non credo, anche perché purtroppo sono stato assente un paio di lezioni. Riusciresti a farmi un piccolo esempio?
    Se non è un disturbo.
    Grazie
  • Qui non si fornisce codice per soluzione di esercizi ... del resto il codice di un semplice ordinamento come il bubble sort lo trovi su web ...

    Ti posso dire che già il codice presentato presenta problemi ...

    Il vettore deve essere

    persona p[10];

    e nel for devi usare

    p[a].

    per ogni elemento
  • Ok va bene ti ringrazio molto, grazie per i consigli
Devi accedere o registrarti per scrivere nel forum
6 risposte