Основні етапи розв’язання прикладних задач із використанням комп’ютера

Розв’язання задач із використанням комп’ютера характеризується декількома етапами (табл. 1), деякі з яких виконуються безпосередньо людиною, інші — людиною і машиною. Кожен із цих етапів важливий по-своєму, і тільки правильне виконання кожного з етапів приводить до розв’язання задачі в цілому.

Таблиця. 1

Етапи розв’язання задач за допомогою комп’ютера

Етап

Опис етапу

Постанова задачі Формулювання задачі в термінах деякої галузі знань, опис початкових даних та очікуваних результатів, формулювання мети задачі
Побудова інформаційної моделі Опис реального об’єкта дослідження в припустимих для реалізації задачі термінах, щоб звести дослідження реального об’єкта до розв’язання задачі на моделі
Вибір методу формалізованої задачі Метод розв’язуваної задачі — це сукупність теоретичних принципів і практичних прийомів, що використовуються під час розв’язування задачі
Розробка алгоритму розв’язуваної задачі Алгоритм більшою мірою визначається обраним методом, хоча той самий метод може бути реалізований за допомогою різних алгоритмів. Під час складання алгоритму необхідно враховувати всі його властивості
Вибір програмного забезпечення Визначення необхідного прикладного програмного забезпечення (якщо воно є) або розробка нового програмного забезпечення (розробка алгоритму, вибір системи програмування, написання й тестування програми)
Виконання алгоритму на комп’ютері та отримання комп’ютерної моделі Настроювання алгоритму або програми Перевірка правильності роботи програми за допомогою тестів і виправлення виявлених похибок. Тест — це спеціально дібрані вхідні дані для отримання певного результату
Аналіз отриманих результатів Аналіз результатів, отриманих на моделях і на реальних об’єктах, для виправлення помилок і доопрацювання розробленої прикладної програми, що пройшла тести на моделі

 

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

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

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

Програма — це алгоритм, записаний мовою програмування.

Класифікація мов програмування

За ступенем залежності від апаратних засобів

За принципом програмування

За орієнтацією

на клас задач

Низького рівня (мова асемблера — машинно-залежна мова, що описує дії в термінах команд процесора та програми, які транслюють арифметичні вирази (автокоди) Процедурні мови. Програма, написана процедурною мовою, описує, що необхідно робити для розв’язання задачі, використовуючи при цьому такі основні поняття, як слідування, розгалуження, цикл Універсальні мовипризначені для розв’язування різноманітних задач
Високого рівня (машинно-незалежні мови, наближені до природних) Непроцедурні мови. Програма, написана непроцедурною мовою, описує, що потрібно робити для розв’язання задачі, використовуючи такі поняття, як підстановка, розгалуження, рекурсія Спеціалізовані мовивраховують специфіку предметної області
Об’єктно-орієнтованіоперують такими поняттями, як об’єкти та класи об’єктів

 

Транслятор (translation — переклад) — програма, яка перетворює команди мови програмування на машинну мову. Існує два способи трансляції: інтерпретація та компіляція.

Інтерпретатор (interpretation) — програма, яка перекладає кожну інструкцію програми в машинні коди; після виконання одного фрагмента програми процесор переходить до опрацювання іншого.

Компілятор (compile — збирати) — програма, яка перекладає весь текст програми, попередньо записавши її у пам’ять комп’ютера. Відкомпільовану програму (в машинних кодах) можна зберегти для подальшого виконання.