4.1. Етапи розв’язування задач з використанням алгоритмів і проєктів

Назад до змісту

Дайте відповіді на запитання

1. З яких етапів складається розв’язування задач на обчислення з використанням алгоритмів і проєктів мовою програмування, створених на основі відповідних алгоритмів?

Розв’язування задач складається з шести етапів: 1) аналіз умови та створення математичної моделі; 2) створення алгоритму; 3) створення комп’ютерного проєкту; 4) запуск проєкту для довільних наборів даних; 5) запуск для тестових наборів даних; 6) запуск для потрібних наборів даних з умови задачі.

2. Що потрібно виконати на кожному з етапів розв’язування задач на обчислення з використанням алгоритмів і проєктів мовою програмування, створених на основі відповідних алгоритмів? Коротко поясніть.

На кожному етапі потрібно виконати наступні дії:

  • Етап 1: Проаналізувати умову задачі та створити її математичну модель, визначивши вхідні дані, кінцеві результати та формули для обчислень.
  • Етап 2: Створити алгоритм розв’язування задачі, зазвичай у вигляді блок-схеми.
  • Етап 3: На основі створеного алгоритму написати комп’ютерний проєкт мовою програмування.
  • Етап 4: Запустити проєкт з довільними вхідними даними, щоб перевірити його працездатність і виправити синтаксичні помилки, якщо вони є.
  • Етап 5: Протестувати проєкт, використовуючи спеціальні набори вхідних даних (тестові набори), для яких результат відомий, щоб виявити та виправити логічні помилки.
  • Етап 6: Запустити проєкт з потрібними вхідними даними, щоб отримати кінцевий результат.

3. Помилки яких видів може містити проєкт? У чому полягає кожний з них?

Проєкт може містити два основні види помилок:

  • Синтаксичні помилки: Це порушення правил написання команд мовою програмування. Через такі помилки виконання проєкту переривається.
  • Логічні помилки: Це помилки в самому алгоритмі, через які програма працює, але видає неправильний результат. Вони виникають, коли очікувані результати не збігаються з тими, які видає комп’ютер.

4. Які набори значень вхідних даних називають тестовими?

Тестовими називають набори значень вхідних даних, які використовуються для перевірки правильності роботи проєкту. Вони мають бути дібрані так, щоб перевірити правильність виконання всіх складових частин проєкту, зокрема всіх можливих випадків виконання розгалужень.

Обговоріть і зробіть висновки

1. Як визначити мінімальну кількість тестових наборів значень вхідних даних, щоб якісно протестувати проєкт?

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

2. Чи можна дібрати набори значень вхідних даних і скільки їх потрібно, щоб на 100% гарантувати, що проєкт завжди працюватиме правильно?

Дібрати набори значень потрібно так, щоб перевірити правильність виконання всіх складових частин проєкту. Проте, навіть ретельне тестування не завжди може дати 100% гарантію відсутності помилок у складних проєктах, але воно значно підвищує надійність його роботи.

3. Що буде, якщо не виправити синтаксичну помилку? Логічну помилку?

Якщо не виправити синтаксичну помилку, виконання проєкту буде перервано, і він не запуститься. Якщо не виправити логічну помилку, проєкт виконається, але видасть неправильні, неочікувані результати.

Виконайте завдання

1. Щоб дістатися з дому на тренування, Василю потрібно дійти до автобуса і потім проїхати ним до стадіону. Який час він витратить на шлях від дому до стадіону, якщо відомо відстані, які проходить Василь і проїжджає автобус, і швидкості руху Василя й автобуса? Виконайте всі етапи розв’язування задачі.

Етап 1. Математична модель задачі:

Вхідні дані: відстань пішки до автобуса (s1, км), швидкість руху пішки (v1, км/год), відстань поїздки автобусом (s2, км), швидкість автобуса (v2, км/год).

Кінцевий результат: загальний час руху від дому до стадіону (t, год).

Формули: $t = s1/v1 + s2/v2$.

Етап 2. Алгоритм розв’язування задачі (блок-схема):

  1. Початок
  2. Ввести s1, v1, s2, v2
  3. Обчислити t = s1/v1 + s2/v2
  4. Вивести t
  5. Кінець

Етап 3-6. Тестування та виконання:

Тестовий приклад: s1=2 км, v1=5 км/год, s2=10 км, v2=25 км/год.

Очікуваний результат: t = 2/5 + 10/25 = 0.4 + 0.4 = 0.8 год.

Гіпотеза: При збільшенні швидкості руху загальний час подорожі зменшується.

2. Туристам потрібно за три дні пройти s км. У І день вони йшли t1 год зі швидкістю v1 км/год, у ІІ день вони йшли t2 год зі швидкістю v2 км/год. З якою швидкістю їм потрібно рухатися в ІІІ день, щоб за t3 год пройти потрібний шлях?

Етап 1. Математична модель задачі:

Вхідні дані: загальна відстань s (км), час руху в 1 день t1 (год), швидкість в 1 день v1 (км/год), час руху в 2 день t2 (год), швидкість в 2 день v2 (км/год), час руху в 3 день t3 (год).

Кінцевий результат: потрібна швидкість в 3 день v3 (км/год).

Формули: s3 = s – t1×v1 – t2×v2; v3 = s3/t3.

Етап 2. Алгоритм розв’язування задачі:

  1. Початок
  2. Ввести s, t1, v1, t2, v2, t3
  3. Обчислити s3 = s – t1×v1 – t2×v2
  4. Обчислити v3 = s3/t3
  5. Вивести v3
  6. Кінець

Гіпотеза: Якщо туристи рухалися повільно в перші два дні, то в третій день їм потрібно буде рухатися швидше.

3. В Улянки є кулька, для якої відомі її радіус R і маса m1. Улянка занурює кульку в посудину з рідиною. Відомі маса витісненої рідини m2 та її об’єм v2. Визначити, чи буде плавати кулька в рідині, чи потоне, чи спливатиме.

Етап 1. Математична модель задачі:

Вхідні дані: радіус кульки R (см), маса кульки m1 (г), маса витісненої рідини m2 (г), об’єм витісненої рідини v2 (см³).

Кінцевий результат: стан кульки в рідині (плаває/тоне/спливає).

Формули: V_кульки = (4/3)×π×R³; ρ_кульки = m1/V_кульки; ρ_рідини = m2/v2.

Етап 2. Алгоритм розв’язування задачі:

  1. Початок
  2. Ввести R, m1, m2, v2
  3. Обчислити V_кульки = (4/3)×π×R³
  4. Обчислити ρ_кульки = m1/V_кульки
  5. Обчислити ρ_рідини = m2/v2
  6. Якщо ρ_кульки < ρ_рідини, то “спливатиме”
  7. Якщо ρ_кульки = ρ_рідини, то “плаватиме”
  8. Якщо ρ_кульки > ρ_рідини, то “потоне”
  9. Кінець

Гіпотеза: Кулька з меншою густиною за рідину буде спливати, а з більшою – тонути.

4. Петрик хоче запросити свого друга в кіно і пригостити його морозивом. Мати дала йому для цього х грн. Чи вистачить грошей у Петрика на 2 квитки в кіно і на 2 порції морозива?

Етап 1. Математична модель задачі:

Вхідні дані: сума грошей x (грн), ціна квитка в кіно c1 (грн), ціна порції морозива c2 (грн).

Кінцевий результат: чи вистачить грошей (так/ні).

Формули: загальна_вартість = 2×c1 + 2×c2.

Етап 2. Алгоритм розв’язування задачі:

  1. Початок
  2. Ввести x, c1, c2
  3. Обчислити загальна_вартість = 2×c1 + 2×c2
  4. Якщо x ≥ загальна_вартість, то “вистачить”
  5. Інакше “не вистачить”
  6. Кінець

Гіпотеза: При зростанні цін на квитки та морозиво ймовірність того, що грошей вистачить, зменшується.

Готуємось до вивчення нового матеріалу

1. Наведіть приклади властивостей вікна виконання проєкту та їх значень.

Властивості вікна — це його характеристики, які можна змінювати. Наприклад:

  • Заголовок (Title): текст, що відображається у верхній частині вікна (наприклад, “Моя програма”).
  • Висота (Height): розмір вікна по вертикалі (наприклад, 400 пікселів).
  • Ширина (Width): розмір вікна по горизонталі (наприклад, 600 пікселів).
  • Колір фону (BackColor): колір заливки вікна (наприклад, “синій”).

2. Які події можуть відбуватися з вікном виконання проєкту?

З вікном можуть відбуватися такі події, як:

  • Створення (Create): відбувається в момент появи вікна.
  • Клацання мишею (Click): коли користувач натискає на вікно кнопкою миші.
  • Закриття (Close): коли користувач натискає на хрестик, щоб закрити вікно.
  • Зміна розмірів (Resize): коли користувач змінює розмір вікна.

3. Що таке обробник події? Як він записується і виконується у проєкті?

Обробник події — це частина коду (процедура або функція), яка автоматично виконується, коли настає певна подія. У проєкті він записується як окремий блок команд, прив’язаний до конкретного об’єкта та події (наприклад, до натискання кнопки). Коли користувач виконує дію (наприклад, клацає мишею), програма викликає відповідний обробник.

4. Для чого у проєктах використовується елемент керування кнопка?

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

Залишити коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Прокрутка до верху