DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Наслідування класів

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інші
Група:
КН

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „ Львівська політехніка “ Кафедра ІСМ  Звіт про виконання лабораторної роботи № 5 з курсу „Технології проектування програмних систем” на тему: «Наслідування класів» Мета роботи: вивчення способів та механізмів наслідування класів та їх використання для побудови програм. Порядок роботи 1. Ознайомитися з теоретичним матеріалом про наслідування класів у Borland C++. 2. Проаналізувати результати роботи фрагментів програм у приведених прикладах наслідування класів. 3. Оголосити базовий клас з необхідними полями, конструкторами, деструктором, методами. Оголосити похідний клас. Програма та результати її виконання #include <vcl.h> #include <iostream.h> #include <conio.h> //Для функції gotoxy(); class point { protected: int x, y; // Координати символа. public: point(int xi = 0, int yi = 0); // Конструктор. int& givex(void); int& givey(void); void show(void); void move(int xn = 0, int yn = 0); private: void hide(); }; point::point (int xi, int yi) { x = xi; y = yi; } // int& point::givex(void) { return x; } // Доступ до х. int& point::givey(void) { return y; } // Доступ до у. // Зобразити символ на екрані. void point::show(void) { gotoxy(x,y); cout << "*"; } // Забрати з екрану зображення символа. void point::hide(void) { gotoxy(x,y); cout << " "; } // Перемістити символ в нове місце экрана. void point::move (int xn, int yn) { hide(); x = xn; y = yn; show(); } class star: public point { protected: int rad; // Довжина променів зірки. int vis; // Видимість зірки на ерані public: // Конструктор класу STAR: star (int xi, int yi, int ri): point(xi,yi) { vis = 0; rad = ri; } ~star() // Деструктор класу STAR. { hide(); // Забрати з екрану зображення зірки. } void show(); // Зобразити зірку на екрані дисплея. void hide(); // Забрати з екрану зображення зірки // Перемістити зображення: void move(int xn, int yn) { hide(); // Забрати з екрану старе зображення. // Змінити координати центру зірки: x = xn; y = yn; show(); // Вивести зображення в новому місці. } // Змінити розмір зображення плями: void vary(float dr) { float a; hide(); // Забрати з екрану старе зображення. // Вирахувати новий радіус: a = dr * rad; if (a <= 0) rad = 0; else rad = (int)a; show(); // Зобразити зірку на екрані. } int& giver(void) // Доступ до довжин променів. { return rad; } }; void star::show() // Зобразити зірку на екрані дисплея. { int i; // Якщо зірка не зображена на екрані: if (vis == 0) { // Зобразити зірку: gotoxy(x,y); cout << "*"; for (int i=1;i<=rad;i++) { gotoxy(x+i,y); cout << "*"; gotoxy(x-i,y); cout << "*"; gotoxy(x,y+i); cout << "*"; gotoxy(x,y-i); cout << "*"; } for (i=-rad;i<=rad;i++) { gotoxy(x+i,y+i); cout << "*"; gotoxy(x-i,y+i); cout << "*"; } vis = 1; } } void star::hide() // Забрати з екрану зображення зірки { int i; if (vis == 0) // нема що забирати. return; // Стерти з екрану зображення: gotoxy(x,y); cout << " "; for (int i=1;i<=rad;i++) { gotoxy(x+i,y); cout << " "; gotoxy(x-i,y); cout << " "; gotoxy(x,y+i); cout << " "; gotoxy(x,y-i); cout << " "; } for (i=-rad;i<=rad;i++) {gotoxy(x+i,y+i); cout << " "; gotoxy(x-i,y+i); cout << " "; } vis = 0; } //--------------------------------------------------------------------------- int main() { star A(5,7,4); // Створюється невидима зірка A. star D(38,12,3); // Створюється невидима зірка D. A.show(); // Зобразити зірку A на екрані. getch(); // Чекати на натискання клавіші. D.show(); // Зобразити зірку D на екрані. getch(); A.move(10,15); // Перемістити зірку A. getch(); D.vary(3); // Змінити розмір променів зірки D. getch () ; //---------------------------------------------------------------------------  Рис.1. Вигляд вікна програми після виконання Висновки Під час виконання лабораторної роботи я ознайомився зі способами перевантаження операцій та їх використанням для роботи з класами та об’єктами.
Антиботан аватар за замовчуванням

2015

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!