Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Заняття_ОІ.doc
Скачиваний:
2
Добавлен:
29.08.2019
Размер:
4 Mб
Скачать

Основні з цих блоків наступні:

Використовуючи дані блоки, можна подати, наприклад, алгоритм чищення картоплі в такому вигляді:

Базові структури алгоритмів

Слідування - вказівка подається у вигляді послідовності двох (або більше) простіших вказівок «Виконати». Наприклад: «Подрібнити ягоди шипшини» => «Закип'ятити воду» => «Залити ягоди кип'ятком» => «Кип'ятити 10 хвилин» => «Дати прохолонути» => «Процідити»...

Розгалуження - використовується для вибору напрямку подальшої роботи залежно від виконання або невиконання заданої умови. Наприклад, «буде дощ, так: взяти парасольку, ні: не брати парасольку»; «набрав прохідний бал, так: поступив, ні: не поступив».

Повторення - використовуються, коли доводиться одну й ту саму дію або послідовність дій виконувати кілька разів. Приклад алгоритму повторення: «Бити молотком цвях, поки його шляпка не зрівняється з поверхнею дошки».

Заняття № 20

Предмет Основи інформатики”

Тема: Основи структурного програмування.

Цілі:

  1. Навчальна: ознайомити студентів з поняттями: програма, мова програмування, компіляція, інтерпретація, середовищем програмуванням. З’ясувати які бувають типи програм, які можуть бути помилки в програмах, які існують проблеми при розв’язуванні задач

  2. Виховна: виховувати старанність, уважність.

Зміст

  1. Запис програм.

  2. Програми-посередники.

  3. Мови програмування.

  4. Середовище програмування.

  5. Сучасне програмування.

  6. Помилки в програмах.

  7. Проблеми розв’язування задач.

Програми. Програмування

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

Мова програмування - система позначень, за допомогою яких можна точно описати алгоритм для виконання його комп’ютером.

Машинні коди - набір двійкових кодів для роботи центрального процесора конкретного типу.

Розрізняють такі типи програм:

  • текст програми, написаний мовою програмування і призначений для компіляції чи інтерпретації;

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

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

  • мікропрограми, які вбудовані в пристрої (мікропрограмне керування пристроєм).

Запис програм

Першим програмістам доводилося писати команди в «машинних кодах», тобто так, як сприймає їх машина. Наприклад, додавання двох чисел виглядало так: 15 0127 2677 3656. Число 15 -це код операції, яка означає «додати два деяких числа і суму записати в пам'ять». Числа 0127, 2677 і 3656 - це номери комірок пам'яті, в яких зберігаються числа. Зміст команди такий: додати число, яке записане в комірці номер 0127, з числом, записаним в комірці з номером 2677, а результат розташувати в комірку з номером 3656.

Пізніше, щоб полегшити процес запису програм, створили систему умовних позначень (мову програмування) для запису команд і внутрішню програму, яка вже сама «перекладала» команди в машинні коди. Тепер приклад додавання двох чисел виглядає так: с = а + b. Перед виконанням команди машина кожній змінній вкаже номер комірки, де знаходяться дані. Знак «=» означає записати (або присвоїти).

Аналогічно записуються більш складні операції, які повинен виконати комп'ютер. Наприклад, перевірку умови аі > т можна записати англійською: if a[i]>m then m=а[і].

Такий підхід вимагає існування:

  • чіткої системи умовних позначень для запису команд зрозумілою людині мовою (мова програмування);

  • програми-посередника, яка перекладатиме команди мовою, зрозумілою машині.

Команди, записані мовою програмування називають операторами або вказівками. Послідовність таких команд називають текстом програми. Текст програми записують в текстовому файлі.

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

Всі існуючи мови програмування можна поділити на дві групи:

  • мови низького рівня;

  • мови високого рівня.

До мов низького рівня належать мови асемблера (від англ. to assemble - складати, компонувати). У мові асемблера використовуються символьні позначення команд, які легко зрозуміти і запам'ятати. Замість послідовностей двійкових кодів команд записуються їх символьні позначення, а замість двійкових адрес даних, які використовуються під час виконання програми, - символьні імена цих даних. Іноді мову асемблера називають мнемокодом або автокодом.

Більшість програмістів при складанні програм користуються деякою мовою високого рівня. Для описування алгоритмів такою мовою використовується певний набір символів - алфавіт мови. З цих символів складаються так звані службові слова мови, кожне з яких має певне призначення. Службові слова зв'язуються одне з одним в речення за певними синтаксичними правилами мови і визначають деяку послідовність дій, які мусить виконати комп'ютер. Використання мов високого рівня надає можливість описувати програми для комп'ютера, використовуючи загальноприйняті позначення операцій і функцій. Та програми, що написані на мовах програмування високого рівня (алгоритмічних мовах програмування), комп'ютер "не розуміє". Для того, щоб він міг виконати програму, її потрібно перекласти на машинну мову. Для такого перекладу використовують спеціальні програми, що мають назву - транслятори.