In fisierul movie.h
1. se declara structura Movie cu proprietatile:
– titlu de tip string
– anulAparitiei de tip int
– boxOffice de tip int
– rottenRating de tip int
2. se declara functia: void PrintItem(Movie &item)
In fisierul movie.cpp
3. se defineste functia void PrintItem(Movie &item) care tipareste proprietatile
parametrului item in ordinea in care au fost declarate cu un spatiu ca separator
intre valori si muta cursorul pe linia urmatoare cu \n
In fisierul main.cpp
4. se sorteaza descrescator tabloul movies dupa boxOffice cu o expresie lambda
5. se tipareste tabloul movies cu functiile for_each() si PrintItem()
Răspunsuri la întrebare
movie.h:
#include <string>
struct Movie {
std::string titlu;
int anulAparitiei;
int boxOffice;
int rottenRating;
};
void PrintItem(Movie &item);
movie.cpp:
#include "movie.h"
#include <iostream>
using namespace std;
void PrintItem(Movie &item){
cout << item.titlu << ' ' << item.anulAparitiei << ' ' << item.boxOffice << ' ' << item.rottenRating << '\n';
}
main.cpp:
#include "movie.h"
#include <iostream>
#include <algorithm>
using namespace std;
Movie tablou[10000];
int main(){
int n;
cin >> n;
for(int i = 0; i < n; i++){
cin >> tablou[i].titlu >> tablou[i].anulAparitiei >> tablou[i].boxOffice >> tablou[i].rottenRating;
}
sort(tablou, tablou+n, [](Movie a, Movie b)->bool
{
return a.boxOffice > b.boxOffice;
});
for_each(tablou, tablou+n, [](Movie m)
{
PrintItem(m);
}
);
}