Завдання 2. ?ТА РОБОТИ: освоїти технологію створення програм в консолі з використанням класів, розв’язувати поставлені задачі з масивами об’єкті. #include <iostream>// Для потокового введення-виведення
Використовуючи дані з попереднього завдання написати програму для одновимірного табулювання функцій a i b за змінною xп= -1, xк= 1, Dx= 0.2 (для виводу результату скористайтесь інструментом MultiLine, у який в циклі виводити значення. 1.6. Контрольні запитання 1. Що називається класом? 2. Як відбувається оголошення класу? 3. Що таке відкриті та закриті члени класу? 4. Що таке конструктори? 5. Що таке деструктори? 6. Наведіть приклади параметризованих конструкторів. 7. Наведіть варіанти ініціалізації об'єктів. 8. Як здійснюється доступ до членів класу? 9. Для чого використовуються вбудовувані функції? 10. Наведіть приклад використання покажчиків на об'єкти. 11. Наведіть приклад використання посилання на об'єкти.
Лабораторна робота №2. Робота з класами, мАСИВИ ОБ’ЄКТІВ МЕТА РОБОТИ: освоїти технологію створення програм в консолі з використанням класів, розв’язувати поставлені задачі з масивами об’єктів. 2.1. Програма роботи 2.1.1 Отримати завдання. 2.1.2. Написати програми відповідних класів, основну та відповідні допоміжні функції, згідно з вказівками до виконання роботи. 2.1.3. Підготувати власні коректні вхідні дані (вказати їх формат і значення) і проаналізувати їх. 2.1.4. Оформити електронний звіт про роботу та захистити її. 2.2. Вказівки до виконання роботи 2.2.1. Студент, згідно з індивідуальним номером, вибирає своє завдання з розд. 2.5 і записує його до звіту. 2.2.2. Оголошення класу (структури), основну та відповідні допоміжні функції необхідно запрограмувати так, як це показано у розд. 2.4. 2.2.3. Власних вхідних даних необхідно підготувати не менше двох комплектів. Їхні значення мають бути коректними, знаходитися в розумних межах і відповідати тим умовам, які стосуються індивідуального завдання. 2.2.4. Звіт має містити такі розділи: ● мету роботи та завдання з записаною умовою задачі; ● коди всіх використовуваних.h і.ccp файлів, а також пояснення до них; ● результати реалізації програми; ● діаграму класів та діаграму варіантів використання з поясненням; ● висновки, в яких наводиться призначення програми, обмеження на її застосування і можливі варіанти удосконалення, якщо такі є. 2.3. Теоретичні відомості Масиви об'єктів можна створювати так само, як і створюються масиви значень інших типів. Наприклад, у наведеному нижче коді програми створюється клас displayClass, який містить значення розширення для різних режимів відеомонітора. У функції main () створюється масив для зберігання трьох об'єктів типу displayClass, а доступ до них, які є елементами цього масиву, здійснюється за допомогою звичайної процедури індексування елементів масиву. #include < iostream> // Для потокового введення-виведення #include < conio> // Для консольного режиму роботи using namespace std; // Використання стандартного простору імен enum resolution {low, medium, high}; // Визначення класу displayClass. class displayClass { // Оголошення класового типу int width; int height; resolution res; public: void setDim(int w, int h) {width = w; height = h; } void getDim(int & w, int & h) {w = width; h = height; } void setRes(resolution r) {res = r; } resolution getRes() { return res; } }; char names[3][9] = { " Низький", " Середній", " Високий" }; int main () { displayClass ds_mode[3]; int i, w, h;
ds_mode[0].setRes(low); ds_mode[0].setDim(640, 480);
ds_mode[1].setRes(medium); ds_mode[1].setDim(800, 600);
ds_mode[2].setRes(high); ds_mode[2].setDim(1600, 1200);
cout < < " Можливі режими відображення даних: \n\n";
for (i=0; i< 3; i++) { cout < < names[ds_mode[i].getRes()] < < ": "; ds_mode[i].getDim(w, h); cout < < w < < " x " < < h < < " \n"; }
cout< < " press any key! "; while(! kbhit()); }
|