ТэхналогііЭлектроніка

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

У сучасным свеце лічбавы тэхнікі праграмаванне з'яўляецца асновай для працы розных вылічальных машын, гаджэтаў і іншага электроннага абсталявання. А ўменне хутка і правільна скласці блок-схему алгарытму выступае падмуркам, асновай дадзенай навукі. Такая схема з'яўляецца графічнай мадэллю працэсаў, якія неабходна выконваць абсталявання. Яна складаецца з асобных функцыянальных блокаў, якія выконваюць розныя прызначэння (пачатак / канец, увод / выснова, выклік функцыі і т. Д.).

Алгарытм і алгарытмізацыі

Па сутнасці, алгарытм з'яўляецца звычайнай інструкцыяй аб тым, у якой паслядоўнасці неабходна выконваць тыя ці іншыя дзеянні пры перапрацоўцы зыходных дадзеных у патрабаваны вынік. Разам з гэтым тэрмінам часцяком выкарыстоўваюць паняцце алгарытмізацыі. Пад ёй разумеюць сукупнасць спосабаў і прыёмаў складання паслядоўнасці для вырашэння канкрэтных задач.

Часта алгарытм ўжываецца не ў якасці інструкцыі для вылічальнай машыны, а як схема выканання якіх-небудзь дзеянняў. Гэта дазваляе адзначыць эфектыўнасць і выніковасць дадзенага спосабу рашэння, выправіць магчымыя памылкі, а таксама параўнаць яго з іншымі падобнымі рашэннямі яшчэ да ўвядзення ў кампутар. Акрамя таго, алгарытм ўяўляе сабой аснову для складання праграмы, якую неабходна напісаць на мове праграмавання, з тым, каб у далейшым рэалізаваць працэс апрацоўкі інфармацыі на ПК. На сённяшні дзень атрымалі вядомасць два практычных спосабу пабудовы такіх паслядоўнасцяў. Першым з'яўляецца пакрокавае слоўнае апісанне, а другім - блок-схема алгарытму задачы. Першы з іх атрымаў істотна меншае распаўсюджванне. Гэта тлумачыцца адсутнасцю нагляднасці і шматслоўныя. Другі спосаб, наадварот, з'яўляецца вельмі зручным сродкам малюнка паслядоўнасці. Ён шырока распаўсюджаны як у вучэбнай, так і ў навуковай літаратуры.

Элементы блок-схем

Блок-схема алгарытму праграмы ўяўляе сабой паслядоўнасць графічных сімвалаў, якія прадпісваюць выкананне канкрэтных аперацый, а таксама сувязяў паміж імі. Унутры кожнага такога малюнка паказваецца інфармацыя пра задачу, якая падлягае выкананню. Памеры і канфігурацыя графічных сімвалаў, а таксама парадак афармлення паслядоўнасцяў рэгламентаваны ДАСТ 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. Дадзеная працэдура будзе адбывацца да таго часу, пакуль не выканаецца ўмова: З> Да, гэта значыць назапашваемая сума перавысіць зададзенае значэнне. Пераменная П з'яўляецца лічыльнікам цыклу. Далей адбываецца пераход да блоку №7, дзе аддрукоўваюцца вынікі працы.

Алгарытмы, якія змяшчаюць структуры укладзеных цыклаў

Часта пры алгарытмічныя рашэнні пастаўленай задачы ўзнікае патрэба стварэння цыкла, які змяшчае ў сваім целе іншы цыкл. Гэта лічыцца нормай. Такія элементы называюць структурамі ўкладзеных цыклаў. Іх парадак можа быць дастаткова вялікім. Ён вызначаецца метадам, дзякуючы якому дасягаецца рашэнне неабходнай задачы. Напрыклад, пры апрацоўцы аднамернага масіва, як правіла, будуецца блок-схема алгарытму без ўкладання цыклаў. І тым не менш у шэрагу выпадкаў пры вырашэнні падобных задач ўзнікае неабходнасць выбару менавіта такога варыянту рашэння. Варта адзначыць, што ўсе ўкладзеныя цыклы, уключаючы першы (вонкавы), павінны ўтрымліваць лічыльнікі з рознымі імёнамі. Па-за межамі свайго цыклу яны могуць выкарыстоўвацца ў якасці звычайных зменных.

дапаможныя алгарытмы

Дадзены тып паслядоўнасці з'яўляецца аналагам моўнай падпраграмы. Дапаможны алгарытм мае імя і параметры, якія называюць фармальнымі. Імя даецца для таго, каб адрозніваць яго ў шэрагу іншых, а параметры выконваюць ролю выходных і ўваходных матэматычных функцый. Іх выбіраюць такім чынам, каб быў вычарпаны поўны набор неабходных велічынь. Часта адзін і той жа фармальны параметр аказваецца адначасова і уваходным, і выходных. Напрыклад, у такім алгарытме на ўваход можа падавацца масіў для апрацоўкі. А ў выніковай частцы ён можа быць прадстаўлены ў змененым выглядзе ў якасці выхаднога параметра. Сярод алгарытмаў дапаможнага тыпу адрозніваюць функцыі і працэдуры.

Декомпозиция алгарытму

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 be.delachieve.com. Theme powered by WordPress.