Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OOP_Посібник (1).doc
Скачиваний:
8
Добавлен:
01.05.2019
Размер:
544.77 Кб
Скачать

Визначити функції:

  • визначення, чи вектори колінеарні;

  • визначення, чи вектори ортогональні;

  • друку вектора;

  • графічного зображення вектора;

  • визначення довжини вектора.

30. Створити клас: вектор у просторі. Створити конструктор і деструктор, генератор копій.

Визначити операції:

«&» – кут між векторами;

«^» – векторний добуток векторів;

«*» – скалярний добуток;

«=» – присвоєння;

«<<» – друку вектора.

Визначити функції:

  • визначення, чи вектори колінеарні;

  • визначення, чи вектори компланарні;

  • визначення мішаного добутку векторів;

  • графічного зображення проекцій вектора на кожну координатну площину;

  • визначення довжини вектора.

31. Створити клас: еліпс. Еліпс задається коефіцієнтами a, b канонічного рівняння. Створити конструктори, деструктор.

Визначити операції:

“=” – присвоєння;

“==”- порівняння;

“<<” – друку інформації про еліпс;

“<=”, “>=” – включення одного еліпсу в інший та навпаки.

Визначити функції:

  • визначення координат фокусів;

  • визначення ексцентриситету;

  • визначення фокального параметру;

  • визначення рівнянь директрис;

  • графічного зображення еліпсу.

32. Створити клас: циліндр, нижня основа якого паралельна координатній площині XOY. Циліндр задається координатами центру нижньої основи, радіусом основи і висотою. Створити конструктори, деструктор.

Визначити операції:

« = » - присвоєння;

«==» - порівняння циліндрів за об’ємами;

«<< » - друк інформації про циліндр;

«<= » - визначення належності одного циліндру іншому;

«>= » - визначення включення одним циліндром іншого.

Визначити функції:

  • зсуву циліндру на заданий вектор;

  • стискання розмірів циліндру в задану кількість разів;

  • друку інформації про перетин з іншим циліндром (так, ні).

33. Створити клас: автомобіль. Автомобіль задається даними: номер. марка, ціна, колір, прізвище та ім’я власника, рік випуску, ознака проходження мита. Створити конструктори, деструктор.

Визначити операції:

« = » - присвоєння;

«<»,«>» - порівняння автомобілів за ціною;

«<=»,«>=» - порівняння автомобілів за роком випуску;

«<< » - друк інформації про автомобіль;

«+ » - сумарна ціна автомобілів.

Визначити функції:

  • розмитнення авто в залежності від року випуску;

  • зміна кольору та власника;

  • визначення, чи розмитнений автомобіль;

  • визначення, чи номер автомобіля є щасливим (симетричним);

  • визначення, скільки років автомобілю.

34. Створити клас: таймер. Таймер задається проміжком часу, через якій буде викликана функція та часом початку та кінця роботи. Створити конструктори, деструктор.

Визначити операції:

« = » - присвоєння;

«==» - порівняння двох таймерів;

«<=»,«>=» - порівняння проміжків часу двох таймерів;

«<»,«>» - порівняння часу початку роботи двох таймерів;

«<< » - друк інформації про таймер;

«-» - визначення різниці в часі між двома таймерами.

Визначити функції:

  • графічного зображення зміни часу у вигляді відрізка, довжина якого збільшується з часом (функція викликатися через заданий таймером проміжок часу);

  • зміни проміжку часу;

  • визначення кількості викликів таймером заданої функції;

  • створення копії таймера;

  • зміни часу початку роботи таймера.

Модуль 3 (30 балів)

Лабораторна робота №5 (12 балів)

Тема: Створення класів з використанням існуючих класів. Успадкування. Агрегація.

Завдання

Використовуючи розроблений в лабораторній роботі №2 клас, утворити новий клас, в якому або успадкувати старий клас, розширивши/звузивши його можливості, або використати в новому класі члени-дані типу старого класу (контейнеризація). Конкретну умову задачі скласти самостійно, узгодивши її з викладачем. Нижче наведено приклади умов задач для варіанту 1 (успадкування) і для варіанту 2 (контейнеризація).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]