MoreKnig.org

Читать книгу «Інформатика. Дитяча енциклопедія» онлайн.


Шрифт:

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

Комп’ютер діє як автоматичний формальний виконавець алгоритмів обробки інформації. Це його головна властивість.

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

Одна із галузей інформатики, яка займається створенням алгоритмів для розв’язання задач, називається теорією алгоритмів.

Форми подання алгоритму

Алгоритм може мати форму:

• усну, записану у вигляді тексту (словесні алгоритми);

• словесно-формульну;

• графічну;

• кінцевого набору кодів.

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

Блоки у блок-схемі поєднуються лініями потоку.

Властивості алгоритмів

Уявіть, що ви живете в часи, коли всю домашню роботу виконують роботи-домогосподарки. Дуже добре, чи не так? Та ось біда, за час господарювання роботів люди забули рецепт приготування дуже смачної страви – яєчні. Одного дня ви зацікавилися старовинною шухлядою, де зберігаються речі вашої бабусі. Вас зацікавила її книга рецептів, особливо один – з дивною назвою «яєчня». Ви вирішили скуштувати цю дивину. Як завжди, ви звернулися до свого робота: «Підсмаж мені яєчні, будь ласка». Але він не знав такої команди і не відреагував на ваше прохання. Чому? Бо ви порушили одну з важливих властивостей алгоритму – зрозумілість.

Зрозумілість – алгоритм, складений для конкретного виконавця, – повинен включати тільки ті команди, які входять до його системи команд.

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

Дискретність – процес розв’язання задачі, повинен бути розбитий на послідовність окремих (дискретних) кроків, які виконуються послідовно (тільки виконавши одну команду, виконавець зможе розпочати виконання наступної) і за визначений час.

«Розбий на сковорідку яйця» – сказали ви роботу. І він відразу ж кинув туди яйця разом зі шкаралупою. «Так гарної яєчні не вийде», – здогадалися ви. Добре, що робот гарно розуміє команду «помити сковорідку». Виходить, що ви знову порушили ще одне правило складання алгоритмів – точність.

Точність (визначеність) визначає той факт, що операції, які використовуються в алгоритмі, не повинні мати двоякого тлумачення; не повинно виникати питання: що саме і як треба робити.

«Відділи шкаралупу від яйця і вилий його на сковорідку. І не забудь додати олії!» – зазирнули ви до рецепта. Поки ви дивилися, що ще потрібно, яєчня пригоріла, бо олія зверху яєць не виконала свого призначення. Знову помилка! І знову ваш робот вправляється в умінні мити посуд. Цього разу ви порушили правило послідовності алгоритму.

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

І ось усі інгредієнти опинились на сковорідці у правильній послідовності. Через кілька хвилин ви відчули чудовий запах яєчні. «Стій!» – закричали ви роботові: «Перекладай на тарілку!». Про правило кінцевості ви здогадалися без чергового миття посуду.

Кінцевість (результативність) вказує на те, що виконання алгоритму повинно завершитися за кінцеве число кроків і привести до цілком конкретного результату.

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

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

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

При конструюванні алгоритму кожну вказівку можна подати у вигляді трьох типів простих вказівок, так званих базових алгоритмічних структур: слідування, розгалуження, повторення.

Слідування – послідовність двох (або більше) виконуваних одна за одною простіших вказівок.

Розгалуження (вибір). Вказівка розгалуження виконується таким чином: спочатку визначається, хибне чи істинне деяке твердження (умова). Якщо твердження істинне, то виконується вказівка, яка розташована ліворуч на малюнку (+), і на цьому вказівка закінчується. Якщо твердження хибне, то виконується вказівка праворуч (-), і вказівка закінчує роботу. (У неповному розгалуженні, якщо твердження хибне, нічого не виконується і вказівка розгалуження закінчує роботу).

Повторення. Розрізняють два типи циклів – цикл-Поки і цикл-До.

Перейти на стр:
Шрифт:
Продолжить читать на другом устройстве:
QR code