Skip to content

nuwm-lab/30-array-of-objects-TheMightyRoman

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Review Assignment Due Date Review Assignment Due Date

Методичні вказівки до виконання лабораторної роботи

Тема: Масиви об’єктів

Мета: Ознайомитися з особливостями ООП, навчитися створювати масиви об’єктів

Хід виконання:

  1. Розробити алгоритми використання класів згідно варіантів завдань для самостійної роботи. Варіанти завдань знаходяться нижче.
  2. Завантажити код із репозиторію. Інструкція як клонувати репозиторій написано тут https://www.youtube.com/watch?v=DdT4yODMUno.
  3. У Visual Studio дописати потрібний код для вирішення поставленого завдання.
  4. Перевірити код на дотримання Code Convention C#: (https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/coding-conventions , https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/identifier-names )
  5. Перевірити на дотримання принципу інкапсуляції.
  6. Завантажити код програми на GitHub.
  7. Проконтролювати появу коментарів та зауважень щодо вашого виконання завдання у системі GitHub.
  8. Оформити звіт.

Варіанти завдань для самостійної роботи

  1. Створити масив з n об’єктів класу "Арифметична прогресія". Клас характеризується першим членом $a_0$, різницею $d$ та кількістю членів $n$. Знайти прогресію з найбільшою сумою.

  2. Створити масив з n об’єктів класу "Трикутник", який заданий координатами своїх вершин. Визначити площу кожного трикутника та знайти трикутник з найбільшою площею.

  3. Створити масив з n об’єктів класу "Опуклий чотирикутник на площині", кожен з яких заданий координатами вершин. Знайти чотирикутник з найбільшим периметром.

  4. Створити масив з n об’єктів класу "Круг на площині", який заданий радіусом та координатами центру. Визначити круг з найбільшою площею.

  5. Створити масив з n об’єктів класу "Прямий вектор". Знайти вектор з найбільшою довжиною.

  6. Створити масив з n об’єктів класу "Функція $sin(a x + b)$". Визначити функцію з найбільшою амплітудою, яка приймає найбільше значення у введеній користувачем точці $x$.

  7. Створити масив з n об’єктів класу "Слово". Визначити кількість цифр у кожному слові за допомогою методу класу та знайти слово з найбільшою кількістю цифр.

  8. Створити масив з n об’єктів класу "Кубічний многочлен $a_3 x^3 + a_2 x^2 + a_1 x + a_0$". Визначити найменше значення на введеному користувачем відрізку $[a, b]$ із заданою точністю $\epsilon$.

  9. Створити масив з n об’єктів класу "Площина $A x + B y + C z + D = 0$". Визначити, чи належить введена користувачем точка кожній площині, та знайти всі площини, через які проходить точка.

  10. Створити масив з n об’єктів класу "Тетраедр", який заданий координатами своїх вершин у просторі. Визначити об'єм кожного тетраедра за допомогою методу класу та знайти тетраедр з найбільшим об'ємом.

  11. Створити масив з n об’єктів класу "Конус", який заданий координатами центру основи, координатами вершини та радіусом основи. Визначити конус з найбільшою твірною.

  12. Створити масив з n об’єктів класу "Людина". Визначити за допомогою методу класу, чи народилася людина в щасливий день (ділення суми цифр числа, місяця, року народження на 7 дають три однакові остачі).

  13. Створити масив з n об’єктів класу "Пряма $a x + b y + c = 0$". Визначити за допомогою методу класу, чи належить одна із двох введених користувачем точок кожній прямій, та знайти пряму, через яку проходять обидві точки.

  14. Створити масив з n об’єктів класу "Точка в просторі". За допомогою методу класу визначити, чи всі координати кожної точки додатні, та знайти всі точки, які потрапляють в перший октант.

  15. Створити масив з n об’єктів класу "Квадратне рівняння $a x^2 + b x + c = 0$". За допомогою методу класу визначити, чи має рівняння дійсні розв’язки, та знайти рівняння з найбільшим числом дійсних коренів.

  16. Створити масив з n об’єктів класу "Абонент". Визначити за допомогою методу класу суму цифр телефону кожного абонента та знайти абонента з найбільшою сумою.

  17. Створити масив з n об’єктів класу "Куля". За допомогою методу класу визначити, чи потрапляє введена користувачем точка всередину кожної кулі, та знайти кулю, в яку потрапляє найбільше точок.

  18. Створити масив з n об’єктів класу "Числова послідовність" (містить $\leq 5$ членів). За допомогою методу класу визначити найменше середнє квадратичне відхилення між послідовними членами у кожній послідовності та знайти послідовність з найменшим відхиленням.

  19. Створити масив з n об’єктів класу "Перетворення площини $x = a_1 \xi + b_1 \eta + c_1, y = a_2 \xi + b_2 \eta + c_2$". За допомогою методу класу визначити, чи переводить кожне перетворення задані користувачем точки $(x, y)$ та $( \xi , \eta )$ одна в одну.

  20. Створити масив з n об’єктів класу "Геометрична прогресія". Клас характеризується першим членом $a_0$, знаменником $q$ та кількістю членів $n$. Визначити за допомогою методу класу, чи є найбільший останній член у прогресії, та знайти прогресію з найбільшим останнім членом.

  21. Створити масив з n об’єктів класу "Матеріальна точка", яка характеризується координатами початкового положення та векторами рівномірної швидкості $\vec{v} = (v_1, v_2, v_3)$. За допомогою методу класу визначити, чи потрапляє кожна точка в перший октант через заданий час $t$, та знайти точку, яка пройшла найбільшу відстань.

  22. Створити масив з n об’єктів класу "Квадратне рівняння $a x^2 + b x + c = 0$". За допомогою методу класу визначити, чи має рівняння дійсні розв’язки, та знайти рівняння з найбільшим числом коренів.

  23. Створити масив з n об’єктів класу "Арифметична прогресія". Клас характеризується першим членом $a_0$, різницею $d$ та кількістю членів $n$. За допомогою методу класу знайти прогресію з найбільшою сумою.

  24. Створити масив з n об’єктів класу "Функція $sin(a x + b)$". За допомогою методу класу визначити функцію з найбільшою амплітудою, яка приймає найбільше значення в введеній користувачем точці $x$.

About

oop-and-design-patterns-2024-2025-2025-2026-30-array-of-objects-oop-and-design-patterns-2024-2025-30 created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%