Skip to content

nuwm-lab/30-array-of-objects-rudnytskyiak24-bit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 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%