/* AUTORE: Manuel Vichi Struct di lavori con durata e costo al minuto */ #include #include #include using namespace std; typedef struct { int ore; int minuti; double costoAlMinuto; } lavoro; void riempiRnd(lavoro arr[], int n) { for (int i = 0; i < n; i++) { arr[i].ore = rand() % 8; arr[i].minuti = rand() % 60; arr[i].costoAlMinuto = (rand() % 300) / 100.0f; } } double costoTotale(lavoro arr[], int n) { double totale = 0.0f; for (int i = 0; i < n; i++) { int minuti = arr[i].ore * 60 + arr[i].minuti; totale += minuti * arr[i].costoAlMinuto; } return totale; } void print(lavoro arr[], int n) { for (int i = 0; i < n; i++) { cout << "Lavoro " << i+1 << ": " << arr[i].ore << " Ore, " << arr[i].minuti << " Minuti, Stipendio: " << arr[i].costoAlMinuto << " euro al minuto." << endl; } } int main(void) { int size = 10; lavoro lavori[size]; srand(time(NULL)); riempiRnd(lavori,size); print(lavori,size); cout << "Costo totale: " << costoTotale(lavori,size) << " euro" << endl; return 0; }