kozlov-dev / course_noc_vko

Introduction to OOP

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

README.md

Introduction to OOP

1.Intro

  • task1.1
  • task1.2

2.Introduction to OOP. Encapsulation, constructors

tasks 2 Реализовать класс для работы с дробными числами. Он должен содержать:

  • -Числитель
  • -Знаменатель
  • -Конструктор
  • -Методы для сложения, вычитания, умножения, деления, сравнения дробных чисел

3. Overloading

tasks 3.1 Модифициоровать класс для работы с дробными числами. Он должен содержать:

  • -Числитель
  • -Конструктор, Деструктор
  • -Знаменатель
  • -Перегруженнные операторы для сложения, вычитания, умножения, деления, сравнения дробных чисел, операторов +=, -=, *=, /=

tasks 3.2 Реализовать односвязный список, обладающим следующим функционалом:

  • -Добавление элементов в конец списка
  • -Добавление элементов в начало списка
  • -Вывод элементов списка
  • -Получение количества элементов списка
  • -Удаление всех элементов
  • -Удаление первого элемента списка
  • -Удаление последнего элемента списка
  • -Вставление элемента на указанную позицию
  • -Удаление элемента на указанной позиции
  • -Удаление элементов в диапозоне между двумя указанными позициями

4. Inheritance

tasks 4

  • Создайте иерархию классов на основе класса Фигура.
  • Должны быть описаны классы Квадрат, Прямоугольник, Треугольник, Круг, Куб, Шар.
  • Реализовать конструкторы,
  • Методы, выводящие информацию о фигуре(название и тип),
  • Методы, считающие площадь, периметр и объем(где он есть)

5. Polymorphism

Для tasks 4 Добавьте следующие возможности:

  • -Базовый класс должен быть абстрактным
  • -Создать динамический массив на n элементов(вводится пользователем) и добавить в него набор различных фигур случайным образом
  • -Найти фигуру с самой большой площадью. Если таких фигур несколько вывести все
  • -Перегрузить операторы ввода и вывода для фигур
  • -Результат вывести в файл
  • -Классы разбить по файлам

About

Introduction to OOP


Languages

Language:C++ 99.7%Language:QMake 0.3%