Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class computer {
- public:
- int freq;
- int count;
- int RAM;
- int ROM;
- computer(int freq, int count, int RAM, int ROM) {
- this->freq = freq;
- this->count = count;
- this->RAM = RAM;
- this->ROM = ROM;
- }
- virtual int Price() {
- float price = (freq * count / 100) + (RAM / 80) + (ROM / 20);
- return price;
- }
- virtual bool Suitability() {
- if (freq >= 2000 && count >= 2 && RAM >= 2048 && ROM >= 320) {
- return true;
- }
- else return false;
- }
- virtual void Info() {
- cout << "CPU freq: " << freq << "MHz" << endl;
- cout << "CPU cores count: " << count << endl;
- cout << "RAM: " << RAM << "Mb" << endl;
- cout << "ROM: " << ROM << "Gb" << endl;
- cout << "Is Suitability: " << Suitability() << endl;
- cout << "Price: " << Price() << endl;
- }
- };
- class laptop: public computer {
- public:
- laptop(int freq, int count, int RAM, int ROM, int batteryLife) : computer(freq, count, RAM, ROM) {
- this->batteryLife = batteryLife;
- }
- int batteryLife;
- int Price() override {
- int price = computer::Price() + (batteryLife/10);
- return price;
- }
- bool Suitability() override {
- if (computer::Suitability() && batteryLife >= 60) {
- return true;
- }
- }
- void Info() override {
- computer::Info();
- cout << "Battery Life: " << batteryLife << endl;
- }
- };
- int main()
- {
- computer c1 = computer(3000, 4, 4096, 1000);
- computer c2 = computer(1250, 2, 1024, 120);
- computer c3 = computer(1950, 2, 2050, 500);
- computer c4 = computer(3900, 8, 9126, 2000);
- computer c5 = computer(2300, 4, 4096, 750);
- laptop l1 = laptop(1200, 2, 2048, 500, 120);
- laptop l2 = laptop(2900, 4, 4096, 320, 30);
- laptop l3 = laptop(4900, 6, 12430, 330, 60);
- laptop l4 = laptop(2500, 8, 5034, 1450, 100);
- laptop l5 = laptop(1455, 4, 3406, 600, 500);
- computer arr[10] = { c1, c2,c3,c4,c5,l1,l2,l3,l4,l5 };
- for (int i = 0; i < 10; i++) {
- arr[i].Info();
- cout << endl << endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement