/* Il programma legge DA FILE 10 struct di persone con due campi, nome ed eta', e restituisce il nome della piu' giovane (o di una delle piu' giovani) con la relativa eta' (usare un'array di struct). Utilizzare una funzione che restituisca l'indice della persona piu' giovane presente nell'array. */ #include #include struct persona { char nome[50]; int eta; }; // Restituisce l'indice della persona piu' giovane presente // nell'array di struct `a'. int giovane (struct persona a[], int n) { int index = 0; for (int i = 0; i < n; i++) if (a[index].eta > a[i].eta) index = i; return index; } int main() { persona elenco[10]; ifstream in_file("dati.txt"); if (!in_file) { cerr << "Manca il file ''dati.txt''" << endl; return 1; } for (unsigned int i = 0; i < 10; ++i) in_file >> elenco[i].nome >> elenco[i].eta; int posizione_giovane = giovane(elenco, 10); cout << "Il piu' giovane e' " << elenco[posizione_giovane].nome << ": ha " << elenco[posizione_giovane].eta << " anni." << endl; in_file.close(); return 0; }