info[i].kiritish();
point[i].baho();
}
arraymyarray;
int tempp;
for(int i=0;i
tempp=point[i].bahosi;
myarray[i]=tempp;
}
sort(myarray.begin(),myarray.end());
cout<<"\n \n Talabalarning bahosi o'sish tartibida \n \n";
for(int k=0;k
for(int i=0;i
if (point[i].bahosi==myarray[k]) {
info[i].print();
cout<<"Talabaning bahosi: "<
}
}
}
sort(myarray.rbegin(),myarray,rend());
cout<<"\n \n Talabalarning bahosi o'sish tartibida \n \n";
for(int k=0;k
for(int i=0;i
if (point[i].bahosi==myarray[k]) {
info[i].print();
cout<<"Talabaning bahosi: "<
}
}
}
system ("pause");
return 0;
}
Natija
OYD da juda katta sonlarni saralash algoritmlari asosida dasturlar yaratish
Ishning maqsadi: Juda katta sonlarni saralash algoritmlari orqali dasturlash ko’nikmalarini shakllantirish.
Topshiriq: Variantda berilgan class, noma’lum nomlar fazosi,kontenerlar asosida, OYD da juda katta sonlarni saralash algoritmlari xususiyatlaridan foydalangan holda vazifaga muvofiq dasturni yozing.
№
|
Topshiriq
Barcha classlarda juda katta sonlarni saralash algoritmlaridan foydalanib saralash metodlarini yarting
|
|
“Millayarderlar” classini yarating.
Maydonlar: FIO, yashash_manzili,boyligi,firmalari,yoshi.
Vector konteyneridan foydalanib boyligi bo’yicha saralang.
(kamida 30 xonali sonlar ketma-ketligidan iborat bo‘lsin).
|
#include "stdafx.h"
#include
#include
#include
#include
#include
using namespace std;
class milliarderlar
{
public:
string FIO;
string yashash_manzili;
string boyligi;
string firmalari;
int yoshi;
void input()
{
cout << "Milliarderning FIO sini kiriting: ";
cin >> FIO;
cout << "Yashash manzilini kiriting: ";
cin >> yashash_manzili;
cout << "Milliarderning boyligini kiriting: ";
cin >> boyligi;
cout << "Milliarderning firmalarini kiriting: ";
cin >> firmalari;
cout << "Milliarderning yoshini kiriting: ";
cin >> yoshi;
}
void print()
{
cout << "Milliarderning FIO si: " << FIO << endl;
cout << "Yashashmanzili: " << yashash_manzili << endl;
cout << "Milliarderning boyligi: " << boyligi << endl;
cout << "Millarderning firmalari: " << firmalari << endl;
cout << "Milliarderning yoshi: " << yoshi << endl;
}
};
//geeksforgeeksdan olingan
bool taqqos(string str1, string str2)
{
int n1 = str1.length(), n2 = str2.length();
if (n1 < n2)
return true;
if (n2 < n1)
return false;
for (int i = 0; i
{
if (str1[i] < str2[i])
return true;
if (str1[i] > str2[i])
return false;
}
return false;
}
void sort_KS(string arr[], int n)
{
sort(arr, arr + n, taqqos);
}
int main()
{
const int n = 3;
milliarderlar mil[n], temp;
for (int i = 0; i < n; i++)
{
mil[i].input();
}
string myarray[n];
for (int i = 0; i < n; i++)
{
myarray[i] = mil[i].boyligi;
}
sort_KS(myarray, n);
cout << "\n\n |||||||||||||\\\\////||||||||||||| \n\n";
for (int k = 0; k < n; k++)
{
for (int i = 0; i < n; i++)
{
if (myarray[k] == mil[i].boyligi)
{
temp = mil[k];
mil[k] = mil[i];
mil[i] = temp;
}
}
}
for (int i = 0; i < n; i++)
{
mil[i].print();
}
system("pause");
return 0;
}
Natija
Do'stlaringiz bilan baham: