Muhammad al-Xorazimiy nomidagi Toshkent Axborot texnologiyalari Universiteti




Download 220.62 Kb.
Sana06.12.2022
Hajmi220.62 Kb.
#33494
Bog'liq
571 DASTURLASH 0025
2 5373000144516026973, o.f ishchi dastur МОМ 2021 7 сем (3), RANJEET KUMAR GUPTA-1, Madadjon BMI.doc55555

Muhammad al-Xorazimiy nomidagi Toshkent Axborot texnologiyalari Universiteti
211-21- Guruh talabasining DASTURLASH fanidan
bajargan 7-LABARATORIYA
ISHI

Bajardi: Rasulov Abdukamol


Tekshirdi: Xudazarov Ravshan

Toshkent 2022


17-VARIANT


17. class samalyotlar: Nomi, uzunligi, tezligi class kemalar: sig’imi, narxi Vector konteyneridan foydalanib kemalar ro’yxatida uzunligi, bo’yicha saralang. (Qo„shish orqali saralash (Insertion sort))
#include
#include
#include
#include
#include
using namespace std;
class samalyotlar
{
public:
string nom;
long int uzunlig;
long int tezlig;
};
class kemalar : public samalyotlar
{
public:
int sigim;
int narxi;
void kiritish()
{
cout << "\n Samalyot yoki kemaning nomini kiriting: ";
cin >> nom;
cout << " Uzunligi: ";
cin >> uzunlig;
cout << " Tezligi: ";
cin >> tezlig;
cout << " Sig'imi: ";
cin >> sigim;
cout << " Narxi: ";
cin >> narxi;
}
void s_show()
{
cout << "\n " << setw(10) << nom << " ---........--- " << setw(8) << uzunlig << " metr uzunlikka ega --.......-- " << setw(6) << tezlig << " m/s tezlik va -.....- " << setw(4) << sigim << " kishilik sig'imga ega ... " << setw(2) << narxi << " so'm " << endl;
}
};
void insertion_sort(vector &ve, int n)
{
int key, in, bir, j;
for (int i = 1; i < n; i++)
{
key = ve[i].uzunlig;
j = i - 1;
while (j >= 0 && ve[j].uzunlig > key)
{
ve[j + 1].uzunlig = ve[j].uzunlig;
j--;
}
ve[j + 1].uzunlig = key;
}
}
int main()
{
cout << "\n Kemalar va samalyotlar sonini kiriting: ";
int soni;
cin >> soni;
vector obyekt_vec(soni);
for (int i = 0; i < soni; i++)
{
obyekt_vec[i].kiritish();
}
vector vec2 = obyekt_vec;
insertion_sort(obyekt_vec, soni); // insertion sort funksiyasi
for (int i = 0; i < soni - 1; i++)
{
for (int j = i + 1; j < soni; j++)
{
if (vec2[i].uzunlig == obyekt_vec[j].uzunlig)
{
swap(vec2[i], vec2[j]);
break;
}
}
}
cout << "\n Kemalar sinifida ma'lumotlar uzunliklari bo'yicha saralandi: \n " << endl;
for (int i = 0; i < soni; i++)
{
vec2[i].s_show();
}
cout << endl;
system("Pause");
return 0;
}


Download 220.62 Kb.




Download 220.62 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Muhammad al-Xorazimiy nomidagi Toshkent Axborot texnologiyalari Universiteti

Download 220.62 Kb.