I. Вільївна Скляр
Я готуюсь до курсу інформатики. Алгоритмізація та програмування
УРОК 1. Етапи розв’язування задач за допомогою комп’ютера
Мета уроку: Дати поняття про основні етапи розв’язування задачі з використанням комп’ютера.
Теоретичний матеріал
Нині важко уявити собі життя сучасної людини без комп’ютера. Люди використовують його для розв’язання найрізноманітніших задач: від виконання складних обчислень у наукових дослідженнях та економіці до виконання кропіткої домашньої роботи (наприклад: такі процеси як прання білизни, приготування їжі, миття посуду з використанням сучасної побутової техніки зараз комп’ютеризовані. Комп’ютеру можна доручити навіть функції домашнього секретаря). Комп’ютер—це помічник людини, без нього неможлива обробка величезного потоку інформації, який кожного дня все зростає: будь то оформлення складної документації, створення та обробка графічних зображень, розв’язування математичних задач, отримання даних з будь-якої теми, тощо. Це далеко не повний перелік всіх можливостей нашого помічника.
Для розв’язання цих задач комп’ютер озброєний найрізноманітнішим програмним забезпеченням, яке поділяється на чотири великих категорії: операційні системи, системні утиліти, системи програмування, прикладне програмне забезпечення.
Отже, користувач аналізує завдання, яке необхідно розв’язати, та обирає оптимально придатний програмний засіб, який є в арсеналі засобів його комп’ютера. Однак є велика кількість задач, для розв’язання яких не існує відповідного програмного забезпечення, або існуюче програмне забезпечення з певних причин не влаштовує. У цьому випадку користувач може самостійно написати програму для виконання поставленої задачі.
Розглянемо розв’язання прикладної задачі за допомогою комп’ютера:
Постановка (або формулювання)— це перший крок у розв’язанні будь-якої задачі. На цьому етапі слід чітко з’ясувати: що дано і що треба знайти. Тобто чітко уяснити суть задачі, необхідні початкові дані для її розв’язання, а також те, що можна вважати за очікуваний результат.
Наприклад, батьки вирішили відремонтувати квартиру. Отже, безпосередньо комп’ютер не може зробити ремонт. Але комп’ютер може допомогти не тільки розрахувати кількість потрібних матеріалів, вартість їх перевезень та вартість виконаних ремонтних робіт, а навіть запропонувати оптимальний варіант з кількох можливих, враховуючи всі вимоги до якості та до термінів ремонту, а також фінансові можливості родини.
У цій задачі вхідними даними будуть: розміри кімнат, які необхідно відремонтувати, набір витратних матеріалів (можна тільки поклеїти шпалери та пофарбувати, а можна ще й замінити двері, вікна та підлогу), ціни на ці матеріали, вартість виконуваних робіт тощо. Результатом роботи програми має бути необхідна сума коштів на проведення ремонту.
Побудова математичної моделі — це другий крок розв’язування задачі. Це дуже відповідальний етап, оскільки не завжди в умові задачі міститься формула, яку можна застосувати в програмі. Для цього створюється інформаційна математична модель об’єкта.
У нашому прикладі математичною моделлю задачі буде:
• по-перше, розрахунок площі поверхні стін, що підлягає ремонту;
• по-друге, розрахунок необхідних матеріалів (з урахуванням площішпалер, що знаходяться в рулоні, та додаткових шпалер, необхідних дляспівпадання малюнків на стіні);
• по-третє, розрахунок вартості витратних матеріалів та вартості виконаних робіт.
Примітка: Ці формули отримати неважко, тому таке завдання можна дати учням безпосередньо на уроці або вдома.
Розробка алгоритму — третій крок у розв’язуванні задач. Алгоритм розробляється на основі побудованої математичної моделі. В ньому можна використати вже відомі методи розв’язування отриманих математичних співвідношень, причому за наявності кількох методів розв’язування, необхідно їх проаналізувати та обрати оптимальний. Якщо існуючими методами не можна розв’язати задачу, то треба розробити власний метод.
Під час створення складних алгоритмів застосовується метод покроко-вої деталізації, який полягає в тому, що складна задача розбивається на прості підзадачі, кожна з яких, в свою чергу, може розбиватися на ще простіші. Такий підхід дозволяє розбити алгоритм на окремі частини — модулі, реалізацію кожного з таких модулів можна доручити окремому програмісту. В цьому випадку програміст концентрується на розв’язанні окремої підзадачі, використовуючи для цього свої методи.
Читать дальше