КампутарыПраграмаванне

Што такое алгарытм з галінаваннем? Прыклады і вызначэнне алгарытмаў галінавання

Любы інтэлект у жывёльным свеце карыстаецца пэўнымі алгарытмамі перавагі, якія выказваюць асабістыя "хачу". Можна сказаць, што патэнцыйна штучныя інтэлекты таксама будуць карыстацца чымсьці падобным. А пакуль да рэалізацыі чалавечага ўспрымання свету найбольш блізка падышлі менавіта дзякуючы алгарытмах з галінаваннем. І яны будуць разгледжаныя ў дадзеным артыкуле з тлумачэннем іх логікі і асаблівасцяў.

Што такое алгарытм з галінаваннем у праграмаванні?

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

  1. Лінейныя.
  2. З галінаваннем.
  3. Цыклічныя.

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

Выкарыстанне алгарытмаў з галінаваннем

Так ужо атрымалася, што ўзнікненне сітуацый, калі ўсё можна будзе зрабіць без выбару, нікчэмна малаверагодна, таму неабходна прадумваць, якія варыянты патэнцыйна могуць паўстаць. Так, праводзячы паралель з жыццём, можна прывесці класічны прыклад з надвор'ем: калі на вуліцы горача, то неабходна надзець майку і шорты, калі ідзе снег - курточку. Здараюцца і больш складаныя выбары, ад якіх можа залежаць далейшая жыццё чалавека (або працы праграмы). Алгарытмы адрозніваюцца сваёй складанасцю і детализированием апісання крокаў. Так, для стварэння арыентыру для сябе можна выкарыстоўваць простае абмежаваную апісанне (што і як павінна працаваць). Але з кампутарам такі фокус не пракаціць. Тут неабходна пакрокавае рашэнне кожнай задачы. Алгарытм ўключае ў сябе галінаванне, якое, у сваю чаргу, можа працягвацца практычна бясконца. Хоць на практыцы рэдагаванне такога напісанага кода з'яўляецца праблемным. Каб вы мелі ўяўленне, прапануем азнаёміцца з такімі формамі:

  1. Простая. Калі вы хочаце быць здаровым, вам неабходна займацца спортам.
  2. Складаная. Ёсць жаданне быць здаровым? Калі так, то займайцеся спортам. Калі няма, то валяецца на канапе і глядзіце тэлевізар.
  3. Складаная форма з няпоўным галінаваннем. Неабходна выйсці на вуліцу. Ці ідзе дождж? Калі няма, можна адразу выходзіць. Калі ідзе - вазьміце парасон. І толькі потым выходзіце на вуліцу.

Стварэнне алгарытмаў у агульных рысах

Вось вы ствараеце алгарытм з галінаваннем, па якім будзе выконвацца праграма. Калі ёсць жаданне адлюстраваць выбар схематычна, то падыдзе ромб. Верхавінай пазначым перадачу сігналу, а ў астатнія тры бакі ажыццяўляецца рассыланне адказаў. Пры гэтым зусім неабавязкова выкарыстоўваць іх усё: дастаткова і двух. Ромб, дарэчы, гэта аператар галінавання, які выкарыстоўваецца для абазначэння гэтага дзеяння. Але мы крыху забеглі наперад. З чаго пачынаецца любая праца? З атрымання дадзеных! Пры пабудове алгарытму не забывайце ўказваць, з якімі дадзенымі ідзе праца. Таксама заўсёды павінна быць лагічнае завяршэнне. Бо алгарытм, які немаведама дзе абрываецца, можа выклікаць «вечнае» выкарыстанне працэсара, і гульня папросту завісне. Што, вядома, выкліча негатыўную рэакцыю.

Што неабходна, каб стварыць схему і практычную рэалізацыю алгарытму?

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

Асаблівасці пры стварэнні

Патэнцыйна галінавання могуць быць бясконцымі. Таму пры іх стварэнні можаце не абмяжоўваць сябе колькасцю умоў (хоць у канчатковым выніку чым іх больш, тым цяжэй арыентавацца). Таксама трохі аб поўным і няпоўным галінавання. Што ўяўляе сабой першае, напэўна, зразумела. А ў якіх выпадках выкарыстоўваецца няпоўнае і як вызначыць, што яно неабходна? Калі ёсць неабходнасць правесці дадатковыя дзеянні, у сувязі з асаблівасцю пабудовы праграмы, і адначасова ёсць варыянт простага працягу, або было трэба ўпіхнуць радкі кода туды, дзе яны не прадугледжаны - то гэта як раз той выпадак. І схема пабудовы будзе няпоўнай, але ў поўным аб'ёме выконвае свой функцыянал.

прыклад

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

пасляслоўе

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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