#include <iostream>
#include <algorithm> // per std::sort
using namespace std;
struct Libro {
int codice;
int numeroPagine;
float costo;
float costoPerPagina;
};
bool confrontaCostoPerPagina(const Libro &a, const Libro &b) {
return [Link] < [Link];
}
int main() {
Libro libri[3];
for (int i = 0; i < 3; ++i) {
cout << "Libro " << i + 1 << " - Codice, Numero di pagine, Costo: ";
cin >> libri[i].codice >> libri[i].numeroPagine >> libri[i].costo;
libri[i].costoPerPagina = libri[i].costo / libri[i].numeroPagine;
}
sort(libri, libri + 3, confrontaCostoPerPagina);
float costoMedioPerPagina = (libri[0].costoPerPagina + libri[1].costoPerPagina
+ libri[2].costoPerPagina) / 3;
cout << "\nLibri ordinati per costo per pagina:\n";
for (int i = 0; i < 3; ++i) {
cout << "Libro " << i + 1 << ": Codice = " << libri[i].codice
<< ", Pagine = " << libri[i].numeroPagine
<< ", Costo = " << libri[i].costo
<< ", Costo per pagina = " << libri[i].costoPerPagina << '\n';
}
cout << "\nCosto medio per pagina: " << costoMedioPerPagina << '\n';
return 0;
}