17.Futbolchilar o‘zlari tanlagan raqamlari bilan ketma-ket kamayish tartibida safda turibdi. Lekin ularning yoshlari bir biridan farq qiladi (tenglari ham bor). M- futbolist yosh bo‘yicha saftda tursa, safning nechinchi o‘rnida turishini, yoki raqamlari bo‘yicha safta tursa, safning nechinchi o‘rnini band qilishini aniqlovchi dastur tuzing.
#include #include #include using namespace std;
struct Futbolchi {
int raqam;
int yosh;
};
bool yoshSort(Futbolchi a, Futbolchi b) {
return a.yosh < b.yosh;
}
bool raqamSort(Futbolchi a, Futbolchi b) {
return a.raqam < b.raqam;
}
int main() {
vector futbolchilar = {
{ 7, 30 },
{ 10, 34 },
{ 9, 28 },
{ 1, 31 }
};
int m = 28;
sort(futbolchilar.begin(), futbolchilar.end(), yoshSort);
int yosh_saf = 1;
for (int i = 0; i < futbolchilar.size(); i++) {
if (futbolchilar[i].yosh == m) {
cout << "Futbolchi " << futbolchilar[i].raqam << " yosh bo'yicha " << yosh_saf << "-chi o'rinda turadi." << endl;
break;
}
yosh_saf++;
}
sort(futbolchilar.begin(), futbolchilar.end(), raqamSort);
int raqam_saf = 1;
for (int i = 0; i < futbolchilar.size(); i++) {
if (futbolchilar[i].raqam == m) {
cout << "Futbolchi " << futbolchilar[i].raqam << " raqam bo'yicha " << raqam_saf << "-chi o'rinda turadi." << endl;
break;
}
raqam_saf++;
}