DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Шаблонні класи С++

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

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

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

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Об’єктно-орієнтоване програмування
Група:
КН-21
Коротко про документ

Про що ця робота

Лабораторна робота присвячена вивченню шаблонних класів у мові C++ та їх застосуванню. Розроблено програму для реалізації однозв'язного кільцевого списку за допомогою шаблонів.

У роботі розглядаються

  • Об'єктно-орієнтоване програмування
  • Шаблонні класи
  • Мова програмування C++
  • Динамічна пам'ять
  • Кільцеві списки
  • Алгоритми пошуку

Зміст і розділи

  1. Мета
  2. Послідовність роботи
  3. Індивідуальне завдання
  4. Лістинг програми
  5. Висновок
Для кого:Студенти технічних спеціальностей, які вивчають програмування та об'єктно-орієнтований підхід.
Викладачі:Не вказано

Ключові поняття

шаблонний класC++однозв'язний списокдинамічна пам'ятькласпокажчикметодоб'єктно-орієнтоване програмуванняструктура даних

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

Міністерство освіти та науки України Кафедра АСУ Лабораторна робота №5 з дисципліни ООП “ Шаблонні класи С++” Мета: ознайомитись зі структурою, синтаксисом та семантикою шаблонних класів С++, навчитись їх застосовувати при будові програмних систем. Послідовність роботи: Ознайомитись з теоретичним матеріалом про шаблонні класи. Проаналізувати результат роботи прикладу програми з використанням шаблонного класу для роботи з векторами елементів визначених типів. Виконати програму для інших значень параметрів шаблонного класу. Для заданого варіанта завдання написати з використанням шаблонних класів. Оформити звіт про роботу за такою структурою: Назва роботи; Мета роботи; Послідовність роботи; Індивідуальне завдання; Текст програми; Контрольний приклад та результати роботи програми; Висновки; Індивідуальне завдання: створити шаблонний клас – однозв’язний кільцевий список у динамічній пам’яті. Тип елементів черги визначається параметром шаблона. Передбачити функції для виконання таких операцій: занесення заданого елемента до списку, пошук мінімального та максимального елементів, виведення елементів списку на екран. Лістинг програми (код програми): #include <iostream> #include <conio.h> using namespace std; template <typename X> class list { private: struct A{ A *next; X data; }; A *head; A *last; public: list(){ head=NULL; last=NULL; } ~list(){} void add(X x){ if(!head){ A *tmp=new A; tmp->data=x; tmp->next=head; head=tmp; last=tmp; } else { A *tmp=new A; tmp->data=x; last->next=tmp; last=tmp; last->next=head; } } X list::FindMax() { X max=head->data; for(A *tmp=head; tmp!=last; tmp=tmp->next) { if (tmp->data>max) max=tmp->data; } return max; } X list::FindMin() { X min=head->data; for(A *tmp=head; tmp!=last; tmp=tmp->next) { if (tmp->data<min) min=tmp->data; } return min; } void OutList() { for(A *tmp=head ; tmp!=last; tmp=tmp->next) { cout<<tmp->data<<" "; } cout<<endl; } }; int main() { list<int> My; My.add(3); My.add(5); My.add(17); My.add(2); My.add(0); // last element zero My.OutList(); cout<<"Max="<<My.FindMax()<<endl; cout<<"Min="<<My.FindMin()<<endl; _getch(); return 0; } Скріншот виконання програми: Висновок: виконуючи дану лабораторну роботу, я ознайомився зі структурою, синтаксисом та семантикою шаблонних класів С++, навчився їх застосовувати при будові програмних систем.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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