Guruh talabasi Hojibayev Javohir 1-misol Stol va stul
Download 385.87 Kb.
|
315-20 guruh talabasi Hojibayev Javohir 1-misol Stol va stul class larini yarating va ularni bog’lovchi funksiyalar yarating Dastur kodi: #include using namespace std; namespace yangi_nomlar_fazosi { //Yanginomlarfazosi class Stol { protected: int razmer, ishlab_chiqarilgan_yili; string yogochi; public: Stol() {} Stol(int razmer, int yil, string yogochi) { this->razmer = razmer; this->ishlab_chiqarilgan_yili = yil; this->yogochi = yogochi; } static void qidirish(Stol* massiv, int n, string yog) { //qidirishmaterialibo'yicha for (int i = 0; i < n; i++) { if (massiv[i].yogochi == yog) massiv[i].print(); } } static void saralash(Stol* massiv, int n) { //saralash, razmeribo'yicha for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { if (massiv[i].razmer>massiv[j].razmer) swap(massiv[i], massiv[j]); } } } void ozgartirish(int razmer, int yil, string yogochi) {//o'zgartirishmetodi this->razmer = razmer; this->ishlab_chiqarilgan_yili = yil; this->yogochi = yogochi; } void print() { cout<< "\nRazmeri: " < }; class Stul :public Stol { public: Stul(){} Stul(int razmer, int yil, string yogochi) { this->razmer = razmer; this->ishlab_chiqarilgan_yili = yil; this->yogochi = yogochi; } }; } int main() { using namespace yangi_nomlar_fazosi; // Yangihosilqilingannomlarfazosidanfoydalanish int n, m; cout<< "Nechta stol haqida ma'lumot kiritmoqchisiz?\nn = "; cin>> n; Stol* stollar; stollar = new Stol[n]; if (n) cout<< "\nStollar haqida ma'lumotlarni kiritish:\n\n"; for (int i = 0; i < n; i++) { int razmer, yili; string yogochi; cout<< "Stolning razmeri: "; cin>>razmer; cout<< "Stolning ishlab chiqarilgan yili: "; cin>>yili; cout<< "Stolning yogochi: "; cin>>yogochi; stollar[i] = Stol(razmer, yili, yogochi); } cout<< "\nstollarni saralash, razmeri bo'yicha:\n"; stollar[0].saralash(stollar, n); //Ekrangachiqarish: for (int i = 0; i < n; i++) { stollar[i].print(); } cout<< "\nQidirish: \nYogochini kiriting: "; string man; cin>> man; stollar[0].qidirish(stollar, n, man); cout<< "Nechta stul haqida ma'lumot kiritmoqchisiz?\nn = "; cin>> m; Stul* stullar; stullar = new Stul[m]; if (m) cout<< "\nStullar haqida ma'lumotlarni kiritish:\n\n"; for (int i = 0; i < m; i++) { int razmer, yili; string yogoch; cout<< "Stulning razmeri: "; cin>>razmer; cout<< "Stulning ishlab chiqarilgan yili: "; cin>>yili; cout<< "Stulning yogochi: "; cin>>yogoch; stullar[i] = Stul(razmer, yili, yogoch); } cout<< "\nStullarni saralash, razmeri bo'yicha:\n"; stullar[0].saralash(stullar, m); //Ekrangachiqarish: for (int i = 0; i < m; i++) { stullar[i].print(); } cout<< "\nQidirish: yogchini kiriting: "; cin>> man; stullar[0].qidirish(stullar, m, man); } Natija: 2-misol 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. Dastur kodi: #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 int n; cout<<"To'plam elementlari soni"< for(int i=0;i cin.ignore(1,'\n'); getline(cin,s); first.insert(s); } multiset multiset 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--------------------------------"< cout<} cout<<"Uchinchi to'plam--------------------------------"< cout<} } Natija: 3-misol
Dastur kodi: #include #include using namespace std; class Kitob{ protected: string nomi; int asl_narx; protected: int sahifa_soni,narxi; public: void set(string nomi,int sahifa_soni, int narxi) { this->asl_narx = narxi; this->nomi = nomi; this->sahifa_soni = sahifa_soni; this->narxi = narxi; } }; class Kitob_dukon:public Kitob{ private: int foiz; public: Kitob_dukon(int foiz){ this->foiz = foiz; }; void get() { cout<<"Kitob nomi: "< friend void foiz_uzgart(Kitob_dukon ki){ int f; cout<<"\n\t\t\tYangi foiz bilan hisoblash\n\n"; cout<<"chegirma foizini kiriting:"; cin>>f; ki.foiz = f; ki.chegirma(); ki.get(); }
void chegirma(){ if(this->sahifa_soni<200){ this->narxi = this->asl_narx*(100-this->foiz)/100; } } }; int main(){ Kitob_dukon ki(20) ; string nomi="SHERLOCK HOLMS"; int narxi = 50000; int sahifa_soni= 100; ki.set(nomi, sahifa_soni, narxi); ki.chegirma(); cout<<"\n\t\t Kitob haqida\n\n----------------------------------------------------- \n"; ki.get(); foiz_uzgart(ki); ki.chegirma(); return 0; } Natija: 4-misol M o`lchamli kvadrat matrisa berilgan . Bu massivning elementlarini spiral shaklida chop etish dasturi tuzilsin : avval oxirgi ustun , keyin oxirgi qator teskari tartibda , keyin birinchi ustun teskari tartibda, keyin birinchi qator. Ichki elementlar ham shu tartibda chop etiladi. Eng oxirida matrisaning markaziy elementi chop etiladi. Dastur kodi: #include using namespace std; int main(){ short k,i,j,m,x,y,z,w; float a[100][100]; cin>>m; for(i=1;i<=m;i++) for(j=1;j<=m;j++) cin>>a[i][j]; x=m; y=m; z=1; w=1; for(k=1;k<=m/2;k++){ for(i=z;i<=x;i++) cout<<"a["<for(j=y-1;j>=w;j--) cout<<"a["< cout<<"a["<for(j=w+1;j<=y-1;j++) cout<<"a["< } // bu dastur toq sonlar uchun ham o`rinli if(m%2==1) cout<<"a["< return 0; } Natija: Download 385.87 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling