“Noutbuk” nomli avlod classini yarating. Qo’shimcha parametri - batareyaning ishlash muddati (daqiqada). Qayta yuklangan ikkita metod: “Narx” metodi oddiy kompyuterning narxiga teng miqdorga + batareya ishlash muddati daqiqalari soni * 10 ($ dollar hisobida) ga teng bo'ladi va “Yaroqlilik” metodi oddiy kompyuter shartlarini bajarganda va batareya ishlash muddati 240 daqiqadan kam bo’lmaganda rost(true), aks holda yolg’on(false) qiymat qaytarsin. Bundan tashqari, kompyuterlar haqida ma'lumotlarni chop etuvchi “Print” metodini yarating: protsessor chastotasi, yadro soni, operativ xotira hajmi, qattiq disk hajmi, narxi va ehtiyojlarimiz uchun yaroqliligi.
Asosiy dasturda kompyuter va noutbuk classlarining obyektlarini yarating va ular haqidagi ma'lumotlarni namoyish qiling.
|
Dastur ko’di:
#include
using namespace std;
namespace Komp {
class Kompyuter {
private:
double prchas, yadson, operxotira, qattiqdisk, narx;
public:
Kompyuter (){};
Kompyuter(double prchas, double yadson, double operxotira, double qattiqdisk ): prchas(prchas), yadson(yadson),operxotira(operxotira), qattiqdisk(qattiqdisk) {}
virtual int Narx (){
if (prchas >=2000 && yadson >=2 && operxotira >=2048 && qattiqdisk >=320 ){
narx = (prchas*yadson)/100+(operxotira)/80+ (qattiqdisk)/20;
}
else {
narx=0;
cout<<" Kompyuter tekin beriladi :) "< }
return narx;
}
virtual bool Yaroqlilik (){
bool a=false;
if (prchas>=2000 && yadson>=2 && operxotira>=2048 && qattiqdisk>=320 ){
a=true;
cout<<" Kompyuter yaroqli : "< }
else {
cout<<" Kompyuter yaroqsiz: "< }
}
virtual void Print (){
cout<<" Kompyuter chastotasi : "<
cout<<" Kompyuter yadrosi soni : "< cout<<" Kompyuter operativ hotira : "< cout<<" Kompyuter qattiq disk hajm: "< cout<<" Kompyuter narxi : "< }
};
class Noutbook : public Kompyuter {
private:
double nprchas, nyadson, noperxotira, nqattiqdisk, nnarx;
double Batareya ;
public:
Noutbook(double nprchas, double nyadson, double noperxotira, double nqattiqdisk, double Batareya) :
nprchas(nprchas), nyadson(nyadson), noperxotira(noperxotira), nqattiqdisk(nqattiqdisk), Batareya(Batareya) {}
int Narx() override{
if (nprchas>=2000 && nyadson>=2 && noperxotira>=2048 && nqattiqdisk>=320 ){
nnarx = (nprchas*nyadson)/100+(noperxotira)/80+ (nqattiqdisk)/20+Batareya*10;
}
else {
nnarx=0;
cout<<" Kompyuter tekin beriladi :) "< }
return nnarx;
}
bool Yaroqlilik ()override {
bool b=false;
if (nprchas>=2000 && nyadson>=2 && noperxotira>=2048 && nqattiqdisk>=320 && Batareya>=240){
b=true;
cout<<" Kompyuter yaroqli : "< }
else {
cout<<" Kompyuter yaroqsiz: "< }
}
void Print () override{
cout<<" Noutbook chastotasi : "<
cout<<" Noutbook yadrosi soni : "< cout<<" Noutbook operativ hotira : "< cout<<" Noutbook qattiq disk hajm: "< cout<<" Noutbook batareya o'lchovi:"< cout<<" Noutbook narxi : "< }
};
}
using namespace Komp;
int main (){
Kompyuter K= Kompyuter(2050,3,2080,360 );
Noutbook N= Noutbook (2100, 4,2048, 400, 300);
K.Print();
K.Yaroqlilik();
cout<<"___________________________________________________"< N.Print();
N.Yaroqlilik();
return 0;
}
Natija:
Do'stlaringiz bilan baham: |