G'ulomjonov Shohruzbek
913-21 gurux.
1- LABORATORIYA ISHI
OBYEKTGA YO’NALTIRILGAN DASTURLASH
Mavzu: Noma’lum turlar va noma’lum nomlar fazosi
Ishning maqsadi: C++ dasturlash tilida obyektga yo’naltirilgan dasturlash tamoyilaridan foydalanib noma’lum nomlar fazosini tashkil qilish ko’nikmalarini shakllantirish.
9.
#include
using namespace std;
namespace yangi_nomlar_fazosi { //Yangi nomlar fazosi
class Eshik {
protected:
int razmer, ishlab_chiqarilgan_yili;
string materiali;
public:
Eshik() {}
Eshik(int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
static void qidirish(Eshik* massiv, int n, string mat) { //qidirish materiali bo'yicha
for (int i = 0; i if (massiv[i].materiali ==mat) massiv[i].print();
}
}
static void saralash(Eshik* massiv, int n) { //saralash, razmeri bo'yicha
for (int i = 0; i for (int j = i + 1; j if (massiv[i].razmer >massiv[j].razmer)
swap(massiv[i], massiv[j]);
}
}
}
void ozgartirish(int razmer, int yil, string materiali) {//o'zgartirish metodi
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
void print() {
cout <<"\nRazmeri: "<< razmer
<<"\nIshlab chiqarilgan yili: "<< ishlab_chiqarilgan_yili
<<"\nMateriali : "<< materiali << endl;
}
};
class Deraza :public Eshik {
public:
Deraza(){}
Deraza(int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
};
}
int main() {
using namespace yangi_nomlar_fazosi; // Yangi hosil qilingan nomlar fazosidan foydalanish
int n, m;
cout <<"Nechta eshik haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> n;
Eshik* eshiklar;
eshiklar = new Eshik[n];
if (n) cout <<"\nEshiklar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < n; i++) {
int razmer, yili;
string materiali;
cout <<"Eshikning razmeri: "; cin >> razmer;
cout <<"Eshikning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Eshikningning materiali: "; cin >> materiali;
eshiklar[i] =Eshik(razmer, yili, materiali);
}
cout <<"\nEshiklarnini saralash, razmeri bo'yicha:\n";
eshiklar[0].saralash(eshiklar, n);
//Ekranga chiqarish:
for (int i = 0; i < n; i++) {
eshiklar[i].print();
}
cout <<"\nQidirish: \nMaterialni kiriting: ";
string man; cin >> man;
eshiklar[0].qidirish(eshiklar, n, man);
cout <<"Nechta deraza haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> m;
Deraza* derazalar;
derazalar = new Deraza[m];
if (m) cout <<"\nDerazalar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < m; i++) {
int razmer, yili;
string material;
cout <<"Derazaing razmeri: "; cin >> razmer;
cout <<"Derazaning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Derazaning materiali: "; cin >> material;
derazalar[i] =Deraza(razmer, yili, material);
}
cout <<"\nDerazalarni saralash, razmeri bo'yicha:\n";
derazalar[0].saralash(derazalar, m);
//Ekranga chiqarish:
for (int i = 0; i < m; i++) {
derazalar[i].print();
}
cout <<"\nQidirish: Materialni kiriting: ";
cin >> man;
derazalar[0].qidirish(derazalar, m, man);
}
7.
#include
using namespace std;
namespace yangi_nomlar_fazosi { //Yangi nomlar fazosi
class Ruchka {
protected:
int razmer, ishlab_chiqarilgan_yili;
string materiali;
public:
Ruchka() {}
Ruchka(int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
static void qidirish(Ruchka* massiv, int n, string mat) { //qidirish materiali bo'yicha
for (int i = 0; i if (massiv[i].materiali ==mat) massiv[i].print();
}
}
static void saralash(Ruchka* massiv, int n) { //saralash, razmeri bo'yicha
for (int i = 0; i for (int j = i + 1; j if (massiv[i].razmer >massiv[j].razmer)
swap(massiv[i], massiv[j]);
}
}
}
void ozgartirish(int razmer, int yil, string materiali) {//o'zgartirish metodi
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
void print() {
cout <<"\nRazmeri: "<< razmer
<<"\nIshlab chiqarilgan yili: "<< ishlab_chiqarilgan_yili
<<"\nMateriali : "<< materiali << endl;
}
};
class Qalam :public Ruchka {
public:
Qalam(){}
Qalam (int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
};
}
int main() {
using namespace yangi_nomlar_fazosi; // Yangi hosil qilingan nomlar fazosidan foydalanish
int n, m;
cout <<"Nechta Ruchka haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> n;
Ruchka* Ruchkalar;
Ruchkalar = new Ruchka [n];
if (n) cout <<"\nRuchkalar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < n; i++) {
int razmer, yili;
string materiali;
cout <<"Ruchkaning razmeri: "; cin >> razmer;
cout <<"Ruchkaning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Ruchkaning materiali: "; cin >> materiali;
Ruchkalar[i] =Ruchka(razmer, yili, materiali);
}
cout <<"\nRuchkalarni saralash, razmeri bo'yicha:\n";
Ruchkalar[0].saralash(Ruchkalar, n);
//Ekranga chiqarish:
for (int i = 0; i < n; i++) {
Ruchkalar[i].print();
}
cout <<"\nQidirish: \nMaterialni kiriting: ";
string man; cin >> man;
Ruchkalar[0].qidirish(Ruchkalar, n, man);
cout <<"Nechta Qalam haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> m;
Qalam* qalamlar;
qalamlar = new Qalam[m];
if (m) cout <<"\nQalamlar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < m; i++) {
int razmer, yili;
string material;
cout <<"Qalamning razmeri: "; cin >> razmer;
cout <<"Qalamning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Qalamning materiali: "; cin >> material;
qalamlar[i] =Qalam(razmer, yili, material);
}
cout <<"\nQalamlarni saralash, razmeri bo'yicha:\n";
qalamlar[0].saralash(qalamlar, m);
//Ekranga chiqarish:
for (int i = 0; i < m; i++) {
qalamlar[i].print();
}
cout <<"\nQidirish: Materialni kiriting: ";
cin >> man;
qalamlar[0].qidirish(qalamlar, m, man);
}
16.
#include
using namespace std;
namespace yangi_nomlar_fazosi { //Yangi nomlar fazosi
class Fleshka {
protected:
int razmer, ishlab_chiqarilgan_yili;
string materiali;
public:
Fleshka() {}
Fleshka(int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
static void qidirish(Fleshka* massiv, int n, string mat) { //qidirish materiali bo'yicha
for (int i = 0; i if (massiv[i].materiali ==mat) massiv[i].print();
}
}
static void saralash(Fleshka* massiv, int n) { //saralash, razmeri bo'yicha
for (int i = 0; i for (int j = i + 1; j if (massiv[i].razmer >massiv[j].razmer)
swap(massiv[i], massiv[j]);
}
}
}
void ozgartirish(int razmer, int yil, string materiali) {//o'zgartirish metodi
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
void print() {
cout <<"\nRazmeri: "<< razmer
<<"\nIshlab chiqarilgan yili: "<< ishlab_chiqarilgan_yili
<<"\nMateriali : "<< materiali << endl;
}
};
class Disk :public Fleshka {
public:
Disk(){}
Disk(int razmer, int yil, string materiali) {
this->razmer = razmer;
this->ishlab_chiqarilgan_yili = yil;
this->materiali =materiali;
}
};
}
int main() {
using namespace yangi_nomlar_fazosi; // Yangi hosil qilingan nomlar fazosidan foydalanish
int n, m;
cout <<"Nechta fleshka haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> n;
Fleshka* fleshkalar;
fleshkalar = new Fleshka[n];
if (n) cout <<"\nFleshkalarlar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < n; i++) {
int razmer, yili;
string materiali;
cout <<"Fleshkaning razmeri: "; cin >> razmer;
cout <<"Fleshkaning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Fleshkaning materiali: "; cin >> materiali;
fleshkalar[i] =Fleshka(razmer, yili, materiali);
}
cout <<"\nFleshkalarni saralash, razmeri bo'yicha:\n";
fleshkalar[0].saralash(fleshkalar, n);
//Ekranga chiqarish:
for (int i = 0; i < n; i++) {
fleshkalar[i].print();
}
cout <<"\nQidirish: \nMaterialni kiriting: ";
string man; cin >> man;
fleshkalar[0].qidirish(fleshkalar, n, man);
cout <<"Nechta disk haqida ma'lumot kiritmoqchisiz?\nn = "; cin >> m;
Disk* disklar;
disklar = new Disk[m];
if (m) cout <<"\nDisklar haqida ma'lumotlarni kiritish:\n\n";
for (int i = 0; i < m; i++) {
int razmer, yili;
string material;
cout <<"Diskning razmeri: "; cin >> razmer;
cout <<"Diskning ishlab chiqarilgan yili: "; cin >> yili;
cout <<"Diskning materiali: "; cin >> material;
disklar[i] =Disk(razmer, yili, material);
}
cout <<"\nDisklarni saralash, razmeri bo'yicha:\n";
disklar[0].saralash(disklar, m);
//Ekranga chiqarish:
for (int i = 0; i < m; i++) {
disklar[i].print();
}
cout <<"\nQidirish: Materialni kiriting: ";
cin >> man;
disklar[0].qidirish(disklar, m, man);
}
Do'stlaringiz bilan baham: |