Теоретичний матеріал до уроків 1-2

4. Розв'язання прикладної задачі за допомогою комп'ютера

Розглянемо розв'язання прикладної задачі за допомогою комп'ютера:

Постановка (або формулювання) — це перший крок у розв'язанні будь-якої задачі. На цьому етапі слід чітко з'ясувати: що дано і що треба знайти. Тобто чітко уяснити суть задачі, необхідні початкові дані для її розв'язання, а також те, що можна вважати за очікуваний результат.

Наприклад, батьки вирішили відремонтувати квартиру. Отже, безпосередньо комп'ютер не може зробити ремонт. Але комп'ютер може допомогти не тільки розрахувати кількість потрібних матеріалів, вартість їх перевезень та вартість виконаних ремонтних робіт, а навіть запропонувати оптимальний варіант з кількох можливих, враховуючи всі вимоги до якості та до термінів ремонту, а також фінансові можливості родини.

У цій задачі вхідними даними будуть:

розміри кімнат, які необхідно відремонтувати,
набір витратних матеріалів (можна тільки поклеїти шпалери та пофарбувати, а можна ще й замінити двері, вікна та підлогу),
ціни на ці матеріали,
вартість виконуваних робіт тощо.

Результатом роботи програми має бути необхідна сума коштів на проведення ремонту.


Побудова математичної моделі — це другий крок розв'язування задачі. Це дуже відповідальний етап, оскільки не завжди в умові задачі міститься формула, яку можна застосувати в програмі. Для цього створюється інформаційна математична модель об'єкта.

У нашому прикладі математичною моделлю задачі буде:

•    по-перше, розрахунок площі поверхні стін, що підлягає ремонту;

•    по-друге, розрахунок необхідних матеріалів (з урахуванням площі шпалер, що знаходяться в рулоні, та додаткових шпалер, необхідних для
співпадання малюнків на стіні);

•    по-третє, розрахунок вартості витратних матеріалів та вартості виконаних робіт.

Розробка алгоритму — третій крок у розв'язуванні задач. Алгоритм розробляється на основі побудованої математичної моделі. В ньому можна використати вже відомі методи розв'язування отриманих математичних співвідношень, причому за наявності кількох методів розв'язування, необхідно їх проаналізувати та обрати оптимальний. Якщо існуючими методами не можна розв'язати задачу, то треба розробити власний метод.

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

Останнім етапом у методі покрокової розробки є об'єднання окремих модулів у єдине ціле. Для цього між усіма модулями мають бути встановлені зв'язки, тобто узгоджена передача інформації від одних модулів до інших. Це дуже кропітка робота і від оптимальності вибору вхідних та вихідних параметрів окремих модулів залежить оптимальність роботи всієї програми.

Алгоритм, призначений для комп'ютерної реалізації, має бути записаний однією з мов програмування - це четвертий крок у розв'язуванні задачі. 

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

Отже, мова програмування обрана, програма написана. 

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

Картинки по запросу "аналіз"

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

Тепер програму можна експлуатувати і, навіть, пропонувати іншим користувачам, доповнивши її необхідною документацією.