Berilgan string turidagi to’plamning 2 ta so’zdan iborat elementidan 2- to’plamni, 1 ta so’zdan iborat elementidan 3- to’plamni hosil qiluvchi va ularni ekranga chiqaruvchi dastur tuzing. Ikkala to’plamdan ham bir xil qiymatli elemetlar o’chirilib Saralangan to’plam hosil qilinsin hamda uning qiymatlari ekranga chiqarilsin.
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int count_words(string s){
int count=0;
stringstream ss(s);
string temp;
while(ss>>temp){
count++;
}
return count;
}
int main(int argc, char const *argv[])
{
multiset first;
int n;
cout<<"To'plam elementlari soni"<cin >>n;
for(int i=0;istring s;
cin.ignore(1,'\n');
getline(cin,s);
first.insert(s);
}
multiset second;
multiset third;
for(string i:first){
if(count_words(i)==2){
second.insert(i);
}else if(count_words(i)==1){
third.insert(i);
}
}
cout<<"Ikkinchi to'plam--------------------------------"<for(string i:second){
cout<}
cout<<"Uchinchi to'plam--------------------------------"<for(string i:third){
cout<}
}
2.9.TTJ lar haqida (nomi, xokim_FIO, xonalar soni, talabalar soni, qizlar va bollar soni hamda nogironlar soni, nomeri) to’plam berilgan. TTJ ni nomi, xokim_FIO, xonalar soni, talabalar soni, qizlar va bollar soni hamda nogironlar soni, nomeri bo’yicha qidiruvchi hamda topilgan natijani faylga saqlashni taklif qiladigan dastur tuzing.
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
template struct NoAction {
bool operator()(T a, T b) const {
return false;
}
};
class TTJ{
public:
string nomi;
string xokim_FIO;
int xonalar_soni;
int talabalar_soni;
int qizlar_soni;
int bollar_soni;
int nogironlar_soni;
int nomeri;
TTJ(string nomi, string xokim_FIO, int xonalar_soni, int talabalar_soni, int qizlar_soni, int bollar_soni, int nogironlar_soni, int nomeri):
nomi(nomi),xokim_FIO(xokim_FIO),xonalar_soni(xonalar_soni),talabalar_soni(talabalar_soni),qizlar_soni(qizlar_soni),
bollar_soni(bollar_soni),nogironlar_soni(nogironlar_soni),nomeri(nomeri){}
TTJ(){}
friend istream& operator>>(istream& in, TTJ& ttj){
cout << "Nomi: ";
in >> ttj.nomi ;
cout << "Xokim_FIO: ";
in.ignore(1,'\n');
getline(in,ttj.xokim_FIO);
cout << "Xonalar soni: ";
in >> ttj.xonalar_soni ;
cout << "Talabalar soni: ";
in >> ttj.talabalar_soni ;
cout << "Qizlar soni: ";
in >> ttj.qizlar_soni ;
cout << "Bollar soni: ";
in >> ttj.bollar_soni ;
cout << "Nogironlar soni: ";
in >> ttj.nogironlar_soni ;
cout << "Nomeri: ";
in >> ttj.nomeri;
}
friend ostream& operator<<(ostream& out, TTJ& ttj){
out <<"Nomi: "<< ttj.nomi <out <<"Xokim FIO: "<< ttj.xokim_FIO <out <<"Xonalar soni: "<< ttj.xonalar_soni <out <<"Talabalar soni: "<< ttj.talabalar_soni <out <<"Qizlar soni: "<< ttj.qizlar_soni <out <<"Bollar soni: "<< ttj.bollar_soni <out <<"Nogironlar soni: "<< ttj.nogironlar_soni <out <<"Nomeri: "<< ttj.nomeri<};
};
multiset> search(multiset> t,int nomeri){
multiset> ttjs;
for(auto ttj:t){
if(ttj.nomeri==nomeri){
ttjs.insert(ttj);
}
}
return ttjs;
}
int main(int argc, char const *argv[])
{
cout << "TTJlar soni: ";
int n;
cin >> n;
multiset> ttjs;
for(int i=0;iTTJ ttj;
cin >> ttj;
ttjs.insert(ttj);
}
cout << "Nomeri: ";
int nomeri;
cin >> nomeri;
auto ttjs1 = search(ttjs,nomeri);
ofstream out("ttj.txt");
for(auto ttj:ttjs1){
out << ttj << endl;
}
}
Do'stlaringiz bilan baham: |