Таким чином, можна вважати допоміжний алгоритм своєрідним «чорним ящиком», на вхід якого подаються деякі вхідні дані, а на виході ми отримуємо очікуваний результат. Головне — чітко домовитись про правила оформлення вхідних даних та результату. Невиконання домовленостей може призвести до збою у виконанні допоміжного алгоритму або до отримання неочікуваного результату. Описаний метод послідовної деталізації лежить в основі технології структурного програмування і широко застосовується у таких мовах програмування, як Паскаль, С, C++ та інших мовах високого рівня. При описуванні програми для комп’ютера мовами високого рівня допоміжні алгоритми реалізовуються у вигляді підпрограм. Правила опису, звернення до них та повернення в точку виклику визначаються конкретною мовою програмування. Для зручності часто використовувані підпрограми можна об’єднувати в бібліотечні модулі і за необхідності підключати їх в свої програми.
Домашнє завдання
• Вивчити означення, що були прочитані на лекції;
• Придумати та записати алгоритм, в якому залежно від вибору певноговиконавця необхідний різний ступінь деталізації;
• Продумати приклади алгоритмів, для яких будь-який ступінь деталізації все одно не дозволить виконати їх заданим виконавцем.
УРОК 6. Програма. Мова програмування
Мета уроку: Дати поняття про програму, класифікацію мов програмування, поняття системи програмування, поняття про інтерпретацію та компіляцію.
Теоретичний матеріал
Процес роботи комп’ютера полягає у виконанні програм, тобто деякого набору команд, що надходять у визначеному порядку. Машинний код команди, реалізований у двійковій системі числення, складається з нулів та одиниць. Він указує, яку саме дію треба виконати центральному процесору. Отже, щоб задати комп’ютеру послідовність дій, яку він має виконати, треба задати послідовність двійкових кодів відповідних команд. Писати такі програми—дуже складна справа. Раніше для цього програміст повинен був пам’ятати не тільки всі комбінації нулів та одиниць двійкового коду кожної команди, але й двійкові коди адрес даних, що використовувалися під час виконання програми.
Щоб полегшити роботу програмістів, було розроблено багато мов програмування, які в більш наочному (для людини) вигляді подавали послідовність дій комп’ютера.
Алгоритмічні мови опису побудованих алгоритмів, призначених для виконання комп’ютерами, називаються мовами програмування.
Описи алгоритмів мовою програмування називають програмами.
Легше написати програму мовою, яка наближена до людської, а перекладання цієї програми у машинні коди доручити комп’ютеру.
Нині створено багато мов програмування. Взагалі, для розв’язування більшості задач можна написати програму будь-якою з них. Тільки досвідчені програмісти знають, яку мову краще використати для розв’язування певного класу задач, щоб урахувати всі особливості та специфіку задач.
Мови програмування можна поділити на дві групи: мови низького рівня; мови високого рівня. До мов низького рівня належать мови асемблера (від англ. to assemble — складати, компонувати). У мовах такого рівня використовуються символьні позначення команд, які легко зрозуміти і за-пам’ятати. Замість послідовностей двійкових кодів команд записуються їх символьні позначення, а замість двійкових адрес даних, які використовуються під час виконання програми, — символьні імена цих даних. Іноді мову асемблера називають мнемокодом або автокодом.
Але більшості програмістів під час складання програм зручніше користуватися певною мовою високого рівня. Для описування алгоритмів такою мовою використовується певний набір символів — алфавіт мови. З цих символів складаються так звані службові слова мови, кожне з яких має певне призначення. Службові слова зв’язуються в речення за певними синтаксичними правилами мови. Ці речення визначають деяку послідовність дій, які повинен виконати комп’ютер.
Мови високого рівня максимально наближені до «людської» мови, тому ними зручно писати програми. Але програми, написані мовами програмування високого рівня, комп’ютер «не розуміє». Для того, щоб він міг виконати програму, її потрібно перекласти на машинну мову. Для такого перекладу використовують спеціальні програми, які мають назву — транслятори. Транслятор — це програма, що призначена для перекладу тексту програми з однієї мови програмування на іншу. Процес перекладання називається трансляцією.
Читать дальше