Nurullayev Anvarbek



Download 58,45 Kb.
Sana10.07.2022
Hajmi58,45 Kb.
#769730
Bog'liq
1-lab



Nurullayev Anvarbek
1- LABORATORIYA ISHI
Mavzu:Tiplarni dinamik tarzda aniqlash. Tiplarni almashtirish operatorlari. Yangi nomlar fazosini yaratish.
Ishning maqsadi: C++ dasturlash tilida obyektga yo’naltirilgan dasturlash tamoyilaridan foydalanib noma’lum nomlar fazosini tashkil qilish ko’nikmalarini shakllantirish.
Nazariy qism
Namespace – bir-xil identifikatorlarni bitta dasturda ishlatish muammosini hal qiladi.
Namespace ni umumiy strukturasi quyidagicha:
Topshiriqlar
Har bir talaba o’zining jurnaldagi nomeri bo’yicha topshiriq tanlaydi va shu topshiriq bo’yicha dasturini yaratadi

2.Kompyuter monitor va video kartasini class larini yarating va ularni bog’lovchi funksiyalar yarating.


#include


using namespace std;
namespace yangi_nomlar_fazosi { //Yangi nomlar fazosi
class Monitor {
protected:
string ishlab_chiqarilgan_firmasi; int ishlab_chiqarilgan_yili;
string turi;
public:
Monitor() {}
Monitor(string ishlab_chiqarilgan_firmasi, int yil, string turi) {
this->ishlab_chiqarilgan_firmasi = ishlab_chiqarilgan_firmasi;
this->ishlab_chiqarilgan_yili = yil;
this->turi =turi;
}
static void qidirish(Monitor* massiv, int n, string tur) { //qidirish turi bo'yicha
for (int i = 0; i if (massiv[i].turi ==tur) massiv[i].print();
}
}
static void saralash(Monitor* massiv, int n) { //saralash, ishlab_chiqarilgan_firmasi bo'yicha
for (int i = 0; i for (int j = i + 1; j if (massiv[i].ishlab_chiqarilgan_firmasi >massiv[j].ishlab_chiqarilgan_firmasi)
swap(massiv[i], massiv[j]);
}
}
}
void ozgartirish(string ishlab_chiqarilgan_firmasi, int yil,string turi) {//o'zgartirish metodi
this->ishlab_chiqarilgan_firmasi = ishlab_chiqarilgan_firmasi;
this->ishlab_chiqarilgan_yili = yil;
this->turi =turi;
}
void print() {
cout <<"\nishlab_chiqarilgan_firmasi: "<< ishlab_chiqarilgan_firmasi
<<"\nIshlab chiqarilgan yili: "<< ishlab_chiqarilgan_yili
<<"\nturi : "<< turi << endl;
}
} ;
class Videokarta :public Monitor {
public:
Videokarta(){}
Videokarta (string ishlab_chiqarilgan_firmasi, int yil, string turi) {
this->ishlab_chiqarilgan_firmasi = ishlab_chiqarilgan_firmasi;
this->ishlab_chiqarilgan_yili = yil;
this->turi =turi;
}
};
}
int main() {
using namespace yangi_nomlar_fazosi; // Yangi hosil qilingan nomlar fazosidan foydalanish
int n, m;
cout <<"Nechta Monitor haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> n;
Monitor* Monitorlar;
Monitorlar = new Monitor [n];
if (n) cout <<"\nMonitorlar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < n; i++) {
string ishlab_chiqarilgan_firmasi; int yili;
string turi;
cout <<"Monitorning ishlab_chiqarilgan_firmasi: "; cin >> ishlab_chiqarilgan_firmasi;
cout <<"Monitorning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Monitorning turi: "; cin >> turi;
Monitorlar[i] =Monitor (ishlab_chiqarilgan_firmasi, yili,turi);
}
cout <<"\nMonitorlarni saralash, ishlab_chiqarilgan_firmasi:\n";
Monitorlar[0].saralash(Monitorlar, n);
//Ekranga chiqarish:
for (int i = 0; i < n; i++) {
Monitorlar[i].print();
}
cout <<"\nQidirish: \nturlarini kiriting: ";
string man; cin >> man;
Monitorlar[0].qidirish(Monitorlar, n, man);

cout <<"Nechta Video karta haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> m;


Videokarta* videokartalar;
videokartalar = new Videokarta[m];
if (m) cout <<"\nVideo kartalar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < m; i++) {
string ishlab_chiqarilgan_firmasi;int yili;
string turi;
cout <<"Video kartaning ishlab_chiqarilgan_firmasi: "; cin >> ishlab_chiqarilgan_firmasi;
cout <<"Video kartaning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Video kartaning turi: "; cin >> turi;
videokartalar[i] =Videokarta( ishlab_chiqarilgan_firmasi, yili, turi);
}
cout <<"\nVideokartalarni saralash,ishlab_chiqarilgan_firmasi:\n";
videokartalar[0].saralash(videokartalar ,m);
//Ekranga chiqarish:
for (int i = 0; i < m; i++) {
videokartalar[i].print();
}
cout <<"\nQidirish: turi kiriting: ";
cin >> man;
videokartalar[0].qidirish(videokartalar, m, man);
}


Download 58,45 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish