Блок-схема алгоритму: програми, завдання, елементи, побудова

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

Алгоритм і алгоритмізація

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

Часто алгоритм застосовується не в якості інструкції для обчислювальної машини, а як схема виконання будь-яких дій. Це дозволяє відзначити ефективність і результативність даного способу розв`язання, виправити можливі помилки, а також порівняти його з іншими подібними рішеннями ще до введення в комп`ютер. Крім того, алгоритм являє собою основу для складання програми, яку необхідно написати на мові програмування, з тим, щоб надалі реалізувати процес обробки інформації на ПК. На сьогоднішній день отримали популярність два практичних способу побудови таких послідовностей. Першим є покрокове словесний опис, а другим - блок-схема алгоритму завдання. Перший з них отримав значно менше поширення. Це пояснюється відсутністю наочності і багатослівність. Другий спосіб, навпаки, є досить зручним засобом зображення послідовності. Він набув значного поширення як в навчальній, так і в науковій літературі.елементи блок схеми алгоритму

Елементи блок-схем

Блок-схема алгоритму програми є послідовність графічних символів, розпорядчих виконання конкретних операцій, а також зв`язків між ними. Усередині кожного такого зображення вказується інформація про завдання, що підлягає виконанню. Розміри і конфігурація графічних символів, а також порядок оформлення послідовностей регламентовані ГОСТ 19003-80 і ГОСТ 19002-80.

Розглянемо основні елементи блок-схеми алгоритму (на фото надані приклади їх накреслення).

1. Процес - обчислювальний дію або послідовність таких дій.

2. Рішення - перевірка заданого умови.

3. Модифікація - заголовок циклу.

4. Зумовлений процес - звернення до процедури.

5. Документ - друк і виведення даних.



6. Перфокарта - введення інформації.

7. Введення / Висновок - Введення / Висновок даних.

8. З`єднувач - розрив ліній потоку.

9. Початок / Кінець - початок, кінець, зупинка, пуск, вхід і вихід використовуються в допоміжних алгоритмах.

10. Коментар - використовують для розміщення написів.



11. Вертикальні і горизонтальні потоки - напрямок послідовності, лінія зв`язку між блоками.

12. Злиття - з`єднання потоків.

13. міжсторінкових з`єднувач - мітка, що символізує про перехід на інший аркуш.блок схеми алгоритмів приклади

Правила накреслення

Побудова блок-схеми алгоритму здійснюється по конкретним вимогам, прописаним ГОСТ. Наприклад, при з`єднанні графічних символів використовуються тільки горизонтальні або вертикальні лінії. Потоки, спрямовані справа наліво і знизу вгору, обов`язково позначаються стрілками. Інші лінії можуть не позначатися. Відстань між паралельними потоками не повинно бути менше трьох міліметрів, а між іншими елементами - не менше п`яти міліметрів. Розміри блоків повинні бути кратними п`яти. Ставлення горизонталі до вертикалі графічного символу становить 1,5. Іноді допускається дорівнює двом. Для зручності опису графічні символи треба нумерувати. За характером зв`язків розрізняють види блок-схем алгоритму лінійної, циклічної і розгалужується структури.скласти блок схему алгоритму

Змінні, константи і осередки пам`яті

Для кращого розуміння принципу дії алгоритму можна розглянути простий автомат. У його склад входять пам`ять, що складається з ячеек- записує / зчитує головка- процесор. У чому полягає принцип роботи такого пристрою? Головка, отримавши наказ від процесора, здійснює запис даних в осередок чи виробляє зчитування константи. У найпростішому випадку це буде арифметичне число. Крім того, константами можуть бути структури даних, рядки символів та ін. Під змінної розуміється осередок пам`яті, в якій зберігається інформація. За час виконання алгоритму в такій комірці можуть бути записані різні дані. На цьому принципі побудовані персональні комп`ютери та інша електроніка. Алгоритм виконання будь-якої задачі є набором команд для зчитування або запису інформації в ці осередки пам`яті.

масиви

Масиви є ще одним різновидом індексованих змінних. По суті, це сукупність осередків, яка об`єднана спільним позначенням. Масиви розрізняють двовимірні, тривимірні і т. Д. Найпростіший з них являє собою ряд послідовних осередків. Такий масив має своє ім`я. Кожен елемент має свій номером - індексом. Константа, записана в комірку, називається елементом масиву.

Двовимірний тип за своїм розташуванням елементів нагадує матрицю. Осередки в такому масиві характеризуються двома індексами (це нагадує шахівницю з нумерацією клітин). За таким же принципом реалізовані тривимірні і більше структури.блок схема алгоритму програми

лінійні алгоритми

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

розгалужуються алгоритми

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

Блок-схеми алгоритмів: приклади

Розглянемо, яким чином функціонує розгалужений алгоритм. Як приклад візьмемо функцію: z = y / x. З умови видно, що дане рівняння має один обмеженням - на нуль ділити не можна. Так що необхідно виключити дане рішення і попередити користувача про виниклу помилку. Спочатку складається блок-схема алгоритму. Вона буде складатися з семи блоків. Перший графічний символ - «Початок», другий - «Введення», тут слід задати значення Х і Y. Потім слід блок «Рішення», в ньому проводиться перевірка умови: Х = 0. В даному випадку автомат проводить звірку з осередком константою, якщо вводиться значення співпаде з нею, то рішення алгоритму піде по гілці «Так». В такому випадку управління передається четвертого блоку, і автомат видає «помилку», робота закінчується в сьомому символі «Кінець». Якщо результат перевірки негативний, тоді в п`ятому графічному символі здійснюється процес розподілу і визначається значення Z. У шостому блоці виводиться результат на екран.

циклічні алгоритми

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

Приклад рішення разветвляющегося алгоритму

Розглянемо приклад, в якому дана блок-схема алгоритму з наперед невідомою кількістю проходів. Для цього слід вирішити завдання - вказати найменше число членів ряду натуральних чисел, сума яких перевищує число К. Така блок-схема алгоритму складається з восьми символів. Спочатку вводимо значення числа К (№2). Потім в блоці 3 змінна П отримує значення «одиниця», це означає, що з нього почнеться відлік натуральних чисел. А накопичувальна сума С на початку отримує значення «нуль». Далі управління передається в п`ятий блок, де відбувається виконання команди: З = С + П. Тобто відбувається підсумовування значень осередків С і П, і результат буде перезаписано в С. Після складання першого члена цієї послідовності в блоці №6 здійснюється перевірка умови - чи не перевищує сума заданий число К? Якщо умова не виконана, тоді керування передається четвертого блоку, де до змінної П додається одиниця і здійснюється перехід знову до блоку №5. Дана процедура буде відбуватися до тих пір, поки не виконається умова: Сgt; К, тобто накопичується сума перевищить задане значення. Мінлива П є лічильником циклу. Далі відбувається перехід до блоку №7, де друкуються результати роботи.алгоритм заданий блок схемою

Алгоритми, що містять структури вкладених циклів

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

допоміжні алгоритми

Даний тип послідовності є аналогом мовної підпрограми. Допоміжний алгоритм має ім`я і параметри, які називають формальними. Ім`я дається для того, щоб відрізняти його в ряду інших, а параметри виконують роль вихідних і вхідних математичних функцій. Їх вибирають таким чином, щоб був вичерпаний повний набір необхідних величин. Часто один і той же формальний параметр виявляється одночасно і вхідним, і вихідним. Наприклад, в такому алгоритмі на вхід може подаватися масив для обробки. А в результуючої частини він може бути представлений в зміненому вигляді в якості вихідного параметра. Серед алгоритмів допоміжного типу розрізняють функції і процедури.

декомпозиція алгоритму

Під цим терміном розуміють розкладання загальної схеми алгоритму на допоміжні (функції і процедури) і головний. Цей метод досить простий, коли алгоритм заданий блок-схемою - спочатку з нього виокремлює ділянки, що відповідають за основну роботу. Найбільш складні етапи оформляються як функції і процедури верхнього рівня. Далі їх ділять на елементарні ділянки низького рівня. Тут працює принцип «від складного до простого». Це проводиться до тих пір, поки алгоритм НЕ буде розібраний на найпростіші елементи. Зазвичай рішення декомпозиції послідовності складається з трьох основних етапів: введення даних, сортування масиву, виведення відсортованого масиву. Перший і останній етапи внаслідок їх елементарності не потребують розкладанні, тому їх виконують в головному алгоритмі. А ось другий є досить складним самостійним фрагментом обчислень, тому його зазвичай виводять в окремий блок. Етапи сортування, в свою чергу, діляться на дві частини: встановлення необхідності проведення процедури (N-1) -кратного проходу по заданому масиву і знаходження найменшого елемента в аналізованому фрагменті масиву з подальшою перестановкою його з початковим елементом ділянки. Так як останній етап неодноразово повторюється, то його оформляють як окрему процедуру.


Увага, тільки СЬОГОДНІ!


Поділися, будь ласка статтю
всього голосів: 164
Увага, тільки СЬОГОДНІ!