Створення абстрактних типів даних і перевантаження операцій в мові С++
Алгоритм створення на мові програмування С++ класу "Трапеція" в якому методи дозволяють отримувати і присвоювати значення підстав, висоти і площі, виконуючи при цьому відповідні перетворення. Компоненти інтерфейсу розробленого програмного додатку.
| Рубрика | Программирование, компьютеры и кибернетика |
| Вид | лабораторная работа |
| Язык | украинский |
| Дата добавления | 11.03.2021 |
| Размер файла | 14,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Размещено на http://www.allbest.ru
Створення абстрактних типів даних і перевантаження операцій в мові С++
Андриєнко В.В.
Мета. Отримати практичні навички створення абстрактних типів даних і перевантаження операцій в мові С ++.
Основний зміст роботи. Визначити і реалізувати клас - абстрактний тип даних.
Визначити і реалізувати операції над даними цього класу.
Завдання:
Створити клас «трапеція», такий, що:
а) його екземпляр містить розмір двох основ і висоти.
b) його конструктор без параметра створює екземпляр зі значенням 0, а конструктор з параметрами створює екземпляр з відповідним значенням підстав і висоти.
c) його методи дозволяють отримувати і присвоювати значення підстав, висоти і площі, виконуючи при цьому відповідні перетворення.
d) функція print_sqrt () виводить на екран значення її площі.
e) операція «+» перевантажена: для двох трапецій створює нову трапецію сумарної площі (a = a1 + a2, b = b1 + b2, h = h1 + h2) при додаванні з числом змінює свою площу на цю величину і повертає нове значення площі.
Код:
#include <iostream>
#include <cmath>
using namespace std;
class Trapeze
{
private:
float bigger, smaller, height;
public:
Trapeze()
{
this->bigger = 0;
this->smaller = 0;
this->height = 0;
}
Trapeze(float bigger, float smaller, float height)
{
this->bigger = bigger;
this->smaller = smaller;
this->height = height;
}
Trapeze(const Trapeze &trapez)
{
this->bigger = trapez.bigger;
this->smaller = trapez.smaller;
this->height = trapez.height;
}
float count_volume()
{
return (this->bigger + this->smaller) / 2 * this->height;
}
void set_bigger(float bigger)
{
this->bigger = bigger;
}
void set_height(float height)
{
this->height = height;
}
void set_smaller(float smaller)
{
this->smaller = smaller;
}
float get_bigger()
{
return this->bigger;
}
float get_height()
{
return this->height;
}
float get_smaller()
{
return this->smaller;
}
void print_val()
{
cout<< "Trapeze's volume - " << this->count_volume() <<endl;
}
Trapeze operator+(Trapeze his_trapez)
{
Trapeze temp_trapez;
temp_trapez.set_bigger(this->bigger + his_trapez.bigger);
temp_trapez.set_height(this->height + his_trapez.height);
temp_trapez.set_smaller(this->smaller + his_trapez.smaller);
return temp_trapez;
}
double operator+(double value)
{
return this->count_volume() + value;
}
};
intmain()
{
float bigger, smaller, height;
cout<< "Enter bigger base, smaller base and height of Trapeze - ";
cin>> bigger >> smaller >> height;
Trapeze my_trapeze(bigger, smaller, height), his_trapeze(5, 3, 4);
my_trapeze.print_val();
his_trapeze.print_val();
Trapeze a = my_trapeze + his_trapeze;
a.print_val();
cout<<endl<<my_trapeze + 5.0;
return 0;
}
програмний інтерфейс алгоритм
Рис. 1. Скріншот
Размещено на Allbest.ru
Подобные документы
Концепції об'єктно-орієнтованого програмування. Методи створення класів. Доступ до методів базового класу. Структура даних, функції. Розробка додатку на основі діалогових вікон, програми меню. Засоби розробки програмного забезпечення мовами Java та С++.
курсовая работа [502,5 K], добавлен 01.04.2016Розробка програми на мові програмування С++ з використанням об'єктно-орієнтованого програмування. Робота з файлами, графікою, класами, обробка числової інформації. Графічні засоби мови програмування. Алгоритм задачі та допоміжні програмні засоби.
курсовая работа [102,5 K], добавлен 14.03.2013Особливості системи онлайн-агрегаторів новин, універсальної програмної платформи Microsoft Window. Використання мови програмування C#, створення бази даних. Розробка програмного продукту, алгоритм його створення. Вихідний код та інструкція користувача.
дипломная работа [730,9 K], добавлен 21.01.2016Сутність і призначення мови програмування С++, історія її створення та розвитку, значення на сучасному етапі. Створення програм на мові С++, її структура та особливості. Охорона праці при роботі з обчислювальною технікою, вимоги до техніки безпеки.
курсовая работа [1,2 M], добавлен 29.03.2009Використання математичного сопроцесора або його емулятора при програмуванні на мові асемблера з використанням дробових чисел. Створення програми на мові ASM-86, яка реалізує функції [x], {x}, |X|. Алгоритм перетворення цілого числа в дійсне та навпаки.
курсовая работа [12,4 K], добавлен 08.08.2009Поняття рівнянь регресії та їх практична цінність. Створення програмного продукту на мові об'єктно-орієнтованого програмування з можливістю побудування за експериментальними даними таблиці графіки та обчислювання їх відхилення від експериментальних даних.
курсовая работа [2,5 M], добавлен 24.12.2011Проектування ієрархії класів побутових приладів (пральна машина, пилосос, телевізор, магнітофон, радіоприймач, музичний центр), створення її структурної схеми. Розробка програми з використанням об'єктів створених класових типів на мові програмування Java.
лабораторная работа [451,0 K], добавлен 25.01.2014Складання програми на мові Pascal розрахунку за методом трапецій площі між графіками функцій. Розрахунок за методом трапецій площі між графіками функцій. Алгоритм програми. Кількість відрізків, на які розбивається дільниця інтегрування. Межа інтегрування.
контрольная работа [1,2 M], добавлен 22.04.2009Створення спеціалізованої програми на мові програмування Турбо Паскаль для обробки інформації, що вноситься в бази даних по приватних підприємствах. Постановка задачі і структура зберігаючих даних. Розробка алгоритмів основної програми та процедури Is.
курсовая работа [27,0 K], добавлен 07.10.2010Мова Асемблера, її можливості та команди. Розробка алгоритму програми, його реалізація в програмі на мові Асемблера. Введення елементів матриці та обчислення cуми елементів, у яких молодший біт дорівнює нулю. Методи створення програми роботи з матрицями.
контрольная работа [50,3 K], добавлен 12.08.2012


