Блок-схема е графично представяне на процес, което ясно показва систематичната последователност на всички етапи на задачата, както и всички групи, които участват в този процес. Такава схема е система от графични символи (блокове) и преходни линии (стрелки) между тях. Всеки от тези блокове съответства на определена стъпка от алгоритъма. Вътре в такъв символ е дадено описание на това действие.
За какво се използват блок-схемите?
Споменатите системи са предназначени да изпълняват следните функции:
- разработване на нов процес;
- опишете и документирайте текущия алгоритъм;
- разработване на модификации на този процес или проучване на връзки с вероятната поява на грешки и неуспехи;
- определя кога, къде и как текущият алгоритъм може да бъде променен, за да се тества стабилността на цялата система.
Разработване на работния процес
Всяка блокова диаграма е изградена на базата на алгоритъм от действия, който описва работата на устройство или програма. Следователно той първо се изгражда самсистема. "Алгоритъм" е описание на последователността от операции за решаване на дадена задача. Всъщност това са правилата за извършване на необходимите процеси на обработка на информация. Преди да се пристъпи към изграждането на алгоритъма, е необходимо ясно да се дефинира задачата: какво трябва да се получи в резултат, каква първоначална информация е необходима и какво вече е налично, има ли ограничения за получаването й. След това се съставя списък с действия, които трябва да се извършат, за да се получи желания резултат.
Видове алгоритми
На практика най-често се използват следните типове блок-схеми:
- графика, тоест базирана е на геометрични символи;
- словесно: съставено от обикновени думи на определен език;
- псевдокодове: те са полуформализирано описание на условно алгоритмичен език, който включва елементи от език за програмиране и литературни фрази, както и общоприети математически символи;
- програмен: за запис се използват само езици за програмиране.
Описание на блоковата диаграма на устройството
Графичното представяне на последователността от действия включва изображение на алгоритъм, който описва връзките на функционалните блокове на тази верига, които съответстват на изпълнението на едно или повече действия. Блоковата диаграма на масива се състои от отделни елементи, чиито размери и правила за изграждане се определят от държавния стандарт. За всеки тип действие (въвеждане на данни, оценка на стойностите на израза, валидиранеусловия, контрол на повторението на действията, завършване на обработката и др.) е предвидена отделна геометрична фигура, представена под формата на блок. Тези символи са свързани с линии, които определят последователността на действията.
Основни елементи, използвани при съставянето на блок-схеми
Пълният списък с графични символи, използвани за описание на алгоритъма, се състои от 42 елемента. Няма да дадем всичко, а ще разгледаме само основното.
Елементи на блок-схема:
1. Процес означава изчислително действие или последователност от такива действия, които променят стойностите, подредбата на данните или формата на представяне. За яснота на схемата такива елементи могат да бъдат комбинирани в един блок. Този символ изглежда като правоъгълник, вътре в който са написани коментари, които придружават изпълнението на операция (или група операции).
2. Решение. Този блок се използва за указване на прехода на управление при определено условие. Всеки такъв елемент определя въпроса, сравнението или условието, което го дефинира. С други думи, решението е избор на посока за изпълнение на програма или алгоритъм в зависимост от някакво променливо условие. Графичният изглед на този елемент е ромб. Споменатият символ може да се използва като изображение на следните унифицирани структури: избор, пълна и непълна вилка, цикъл “до” и “до”.
3. Модификация. Този блок маркира началото на цикъла. Използва се за организиране на циклична структура. Вътре в такъв елемент се записва параметърът на кръгадействия, посочват първоначалните му стойности, граничното условие, както и стъпката на промяна на параметъра за последващо повторение. С други думи, модификацията е изпълнение на промяна на команди или техните групи, операции, които променят програмата. Графичното представяне на този символ е шестоъгълник.
4. Предварително дефиниран процес означава изчисление според предварително определена или стандартна програма. Използва се за указване на извикване към допълнителен алгоритъм, който съществува автономно под формата на отделни независими модули, както и за извикване на библиотечни рутинни процедури. Графично този символ е представен от правоъгълник с две вертикални полета по ръбовете. Този елемент се използва за обозначаване на извиквания към функции, процедури, програмни модули.
5. Въвеждане и извеждане на данни като цяло.
6. Стартиране и спиране. Този елемент означава началото и края на алгоритъма, както и входа на програмата и изхода от нея. Графично този символ прилича на правоъгълник, който има дъги вместо странични прави линии.
7. Документът означава изхода от резултатите от работата за отпечатване. Графично такъв елемент прилича на правоъгълник, вместо долната права линия е начертана само полувълна.
8. Ръчно въвеждане означава въвеждане на данни в обработка от оператор с помощта на устройство, което е свързано към компютър (клавиатура). Графичният символ за ръчно въвеждане е четириъгълник, чиито странични линии са успоредни, долната е перпендикулярна на тях, а горната е наклонена.
9. Дисплей означава въвеждане или извеждане на информация, когато устройството е директносвързан към процесора. В момента, в който данните започнат да се възпроизвеждат, операторът може да прави промени, докато се обработват. Графично този елемент представлява фигура, в която долната и горната линия са успоредни, дясната е дъга, а лявата се състои от две прави линии под формата на стрелка.
10. Линиите на потока са стрелки, които показват последователността на връзките. Никоя блокова диаграма на структурата не може без този елемент. Има определени правила за рисуване на тези знаци. Нека ги изброим:
- тези елементи трябва да са успоредни на външните периметърни линии или границите на страницата, на която е показана тази блокова диаграма;
- посоката на линията отгоре надолу или отляво надясно се счита за основна, тя не е обозначена със стрелки, други случаи на посочване на посоки са обозначени от тях;
- промяната на посоката на този елемент се извършва само под ъгъл от 90о.
11. съединител. Този елемент е предназначен да указва комуникация по прекъснати поточни линии. Тези символи се използват, ако блок-схемата на програмата е изградена от няколко части. След това поточната линия от една част трябва да завърши с "конектор", а новата част трябва да започне с този символ. Вътре в такъв елемент се поставя същия сериен номер. Графиката "конектор" е кръг.
12. Интерконектор. Предназначението на този елемент е подобно на предишния, само че се използва за свързване на блок-схеми, поставени на различни страници. Изображение на такъвелементът е представен от петоъгълник под формата на къща.
13. Коментарът е връзка между различни елементи на блок-схема с обяснения. Споменатият елемент ви позволява да включвате формули и друга информация.
Изграждане на блок-схеми
Графичното изграждане на алгоритъм е част от документацията за устройство или програма, която винаги е налична в изобилие. Въпреки това, в повечето случаи софтуерът изобщо не се нуждае от блок-схема. Само няколко изискват изграждането на алгоритъм, който заема няколко листа, докато останалите се нуждаят от символна схема. Една проста блок-схема показва разклонената структура на програмите само в един аспект. Въпреки това, дори такава структура е ясно видима само ако алгоритъмът се побира на един лист. В противен случай, когато блок-схемата е разположена на няколко страници, свързани с преходи на страници, е много трудно да получите правилната представа за нея. Ако е поставен на един лист, тогава за голяма програма това изображение на алгоритъма се превръща в неговия общ план със списък на основните блокове и етапи. Разбира се, такъв график не следва стандартите за изграждане на диаграми, но не се нуждае от тях, тъй като този процес е напълно индивидуален. Правилата относно типа на символите, стрелките и реда на номериране са необходими само за анализиране на подробни блок-схеми.
Масиви и алгоритми за изграждане
Масивът е колекция от информация от един и същи тип, която се съхранява в последователни клъстери памет и има общо име. Такива клетки се наричат„елементи на системата“. Всички клъстери са номерирани последователно. Това число се нарича "индекс на елемента на масива". Как да съставим блокова схема за такава система? Помислете за пример за създаване на алгоритъм за елементарен масив от едномерен тип. Най-простата система има конвенционална форма на низ. Нека зададем името на този масив - "A". Ще приемем, че нашата система се състои от осем клетки (от 1 до 8). Всеки от споменатите клъстери съдържа произволно число, което се нарича "елемент на масива". За да се обърнете към конкретна клетка, трябва да посочите името в квадратни скоби ([3]). Помислете за пример, в който блоковата диаграма на масив е предназначена да запълни системата с произволни числа и след това да изведе информацията на екрана. Какво представлява такъв алгоритъм? Това е елементарна система. Всъщност то няма практическо приложение, но е удобно за учебния процес. Разглежданата блокова диаграма (пример за конструкция е описан по-долу) съдържа само седем основни елемента, свързани с преходни линии.
Описание на последователността от задачи
1. Първият елемент на схемата ще бъде символът "Старт".
2. Вторият блок е „Процесът“, вътре в който въвеждаме „случайна инициализация“.
3. Следващият елемент е „Модификация“, в блока въвеждаме стойността на клетките на масива.
4. Освен това, според дадената функция, се извършва пренасочване към следващия блок от "процеса", в който се посочва обжалването към конкретни клъстери на системата, указвайки границата на произволни числа в диапазона от нула досто. След тази операция се извършва връщане към третия блок, а през него - по-нататък към петия.
5. В този блок "Промени" според въведената функция се извършва пренасочване към следващия елемент.
6. "Изход" показва информация за новото съдържание на масива на монитора, последвано от посока към предишния блок. Следващ - до последния елемент.
7. "Край" на алгоритъма.
Въз основа на такава блок-схема се компилира програма, която ще осигури работата на представения алгоритъм.
Редактор на блок-схеми
Ако се чудите как да направите блок-схема, знайте, че има специални програми, които са предназначени да създават и редактират такива системи. Удобството на графичното показване на алгоритъма е, че потребителят не е обвързан със синтаксиса на конкретен език за програмиране. Изградената блокова диаграма е еднакво подходяща за всички езици (например C, Pascal, BASIC и други). В допълнение, редакторът може да се използва за изграждане на диаграми и проверка на функционалността на схемите. Такава програма е специализиран софтуер. Той предоставя разнообразен набор от инструменти, необходими за изграждане на блок-схеми, което го прави по-удобен от конвенционалните графични редактори. Допълнителните опции ви позволяват да оптимизирате процеса на компилиране на системата с по-нататъшното й трансформиране във функции и процедури на езика за програмиране. В допълнение, редакторът на блок-схеми предлага набор от шаблони, които могат значително да ускорят работата на начинаещ потребител. В крайна сметка е известно, че при конструирането на алгоритъм често се използват повтарящи се структури, например различни варианти на цикли, алтернативи (пълни и непълни), множество разклонения и т.н. Редакторът ви позволява да избирате често използвани елементи в блок-схеми и да ги добавяте към създадената диаграма. Това елиминира необходимостта да ги преначертавате всеки път. Освен това, като използвате редактора, можете да импортирате функции и процедури, реализирани на всеки известен език за програмиране. Тази опция е полезна за анализиране на структурата на алгоритъм, който е написан на непознат език. Системните изисквания на въпросната програма са доста скромни, което ви позволява да я използвате на всеки персонален компютър.
Заключение
Обобщавайки, трябва да отбележа, че подробните схеми за изграждане на алгоритми вече са остарели. Като описание на процеса те не представляват интерес за никого. В най-добрия случай блок-схемите са подходящи за обучение на начинаещи, които не знаят как да мислят алгоритмично. Предложените по едно време елементи със съдържанието си бяха език на високо ниво; те комбинираха операторите на машинен език в отделни групи. В момента всеки графичен елемент отговаря на определен оператор. Това означава, че самият символ се е превърнал в случайна и най-важното - безполезна дейност по рисуване, която лесно може да бъде изоставена. Днес дори линиите за прескачане са станали излишни, тъй като всеки оператор вече е дефиниран. Всъщност графичното изграждане на алгоритмите е повече възхвалено, отколкото прилагано на практика. Програмист с богат опит преди да напише програма,рядко рисува блокова диаграма. Когато стандартът на организацията изисква графичен алгоритъм, те го рисуват след приключване на работата.