cout<<" chiqarilgan firmasi: "<
cout<<"_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-\n";
cout<<" ishlab chiqilgan yili : "<
cout<<" chiqarilgan firmasi: "<
cout<<"_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-\n";
}
Classlar o’rtasida vorislikni tashkil qilish. Overriding va overloading bo’ladigan funksiyalarni yaratish
|
Sana (uchta son):
kun, oy, yil
|
Do’stlar ro’yhati:
FIO, telefon, tug’ilgan sanasi
|
Do’stingizni tug’ilgan kuniga necha kun qolganini hisoblang
|
Dasturi:
#include
#include
using namespace std;
class Day {
private: int sana, oy, yil;
public:
Day (int san, int o,int y){ sana=san; oy=o; yil= y; }
int getsana (){ return sana; }
int getoy (){ return oy; }
int getyil(){ return yil; }
Day (){};
};
class Friends {
private:
string ismi, familyasi, ota_ismi;
int tsana, toy, tyil;
public:
Friends (string is, string fa, string ot, int sa, int oy, int yil){
ismi=is; familyasi= fa; ota_ismi= ot; tsana= sa; toy= oy; tyil=yil; }
string getismi (){ return ismi; }
string getfamilyasi (){ return familyasi; }
string getotaismi (){ return ota_ismi ; }
int gettsana (){ return tsana; }
int gettoy (){ return toy; }
int gettyil(){ return tyil; }
Friends (){};
};
class Kun : public Friends , public Day {
private:
Day day;
Friends friends ;
public:
Kun ( Day day, Friends friends ){
this -> day= day;
this -> friends= friends;
}
void Sana (){
int q=0;
q= ((friends.gettoy()-day.getoy())*30+(friends.gettsana()-day.getsana()));
cout<<"\n\n";
if (q) {
cout<<"Ismi : "<
cout<<" Tug'ilgan kunga : "<
}
else cout<<" Bugun tug'ilgan kuni :) \n\n";
}
};
int main (){
string is, fa, ot;
int aa,bb,cc; int dd,ee,ff;
cout<<"\n\n ";
cout<<" Do'stingiz ismini kiriting : "; cin>>is;
cout<<" Do'stingiz familyasini kiriting : "; cin>>fa;
cout<<" Do'stingiz otasini ismini kiriting : "; cin>>ot;
cout<<" Do'stingiz tug'ilgan yilni kiriting : "; cin>>aa;
cout<<" Do'stingiz tug'ilgan oyini kiriting : "; cin>>bb;
cout<<" Do'stingiz tug'ilgan sanasini kiriting: "; cin>>cc;
cout<<"============================================================\n\n";
cout<<" bugungi sanani kiriting : "; cin>>dd;
cout<<" bu oyni kiriting : "; cin>>ee;
cout<<" bu yilni kiritng : "; cin>>ff;
cout<<"============================================================\n\n";
Friends friends (is, fa, ot, cc, bb,aa);
Day day (dd, ee,ff);
Kun kun (day, friends );
kun.Sana();
cout<<"===============================================================\n";
cout<<"===============================================================\n";
main ();
}
OYD ning merosxo’rlik va polimorfizm xususiyatlaridan foydalangan holda vazifaga muvofiq dasturlar yaratish
|
“Avtomobil” classini yarating. Maydonlari: Nomi, maksimal tezligi(km/s), narx. Konstruktor orqali faqat nomi va maksimal tezligini kiriting. Ikkita virtual metod yarating: "Narx" metodi – mashina narxini quyidagi fomula bilan hisoblaydi: maksimal tezlik * 100 $(AQSH dollari hisobida) va "Modelni yangilash" metodi maksimal tezlikni 10 km/s ga oshiradi. Bundan tashqari, obyekt haqida ma'lumotlarni chop qiluvchi “Axborot” metodini yarating: Nomi, maksimal tezlik va narx.
Bundan tashqari, “Zamonaviy avtomobil” nomli avlod class yarating. Maydonlarini ajdod class dan qabul qilsin. Qayta yuklangan 2 ta metodi mavjud: "Narx" metodi – mashina narxini quyidagi fomula bilan hisoblaydi: maksimal tezlik * 250 $(AQSH dollari hisobida) va "Modelni yangilash" metodi maksimal tezlikni 25 km/s ga oshiradi.
Asosiy dasturda Avtomobil classidan 140 km/s maksimal tezlikka ega va Zamonaviy avtomobil avlod classidan 160 km/s maksimal tezlikka ega bo’lgan obyektlar yarating. Avtomobillar haqida ma’lumotlarni ekranga chiqaring. Avtomobillarni modellarini yangilang va qayta ma’lumotlarni chop qiling.
|
Dasturi: