8.1. Паняцце алгарытму
Успомнім некаторыя паняцці, вывучаныя ў 6-м класе.
Алгарытм — зразумелая і канечная паслядоўнасць дакладных дзеянняў (каманд), фармальнае выкананне якіх дазваляе атрымаць рашэнне пастаўленай задачы.
Выканаўца алгарытму — чалавек, група людзей або тэхнічнае ўстройства, якія разумеюць каманды алгарытму і ўмеюць правільна іх выконваць.
Сістэма каманд выканаўцы — каманды, якія разумее і можа выконваць выканаўца.
Любы выканаўца мае абмежаваную сістэму каманд. Усе яны падзяляюцца на групы:
- 1) каманды, якія непасрэдна выконвае выканаўца.
- 2) каманды, якія мяняюць парадак выканання іншых каманд выканаўцы.
Камп’ютар з’яўляецца ўніверсальным выканаўцам.
Запіс алгарытму ў выглядзе паслядоўнасці каманд, якую можа выканаць камп’ютар, называюць праграмай.
Існуюць наступныя спосабы ўяўлення алгарытмаў:
- слоўны (апісанне алгарытму сродкамі натуральнай мовы з дакладнай і канкрэтнай фармулёўкай фраз);
- графічны (блок-схема) (графічнае адлюстраванне каманд алгарытму з выкарыстаннем геаметрычных фігур, або блокаў, і стрэлак, што злучаюць гэтыя блокі і паказваюць на парадак выканання каманд);
- праграмны (запіс алгарытму ў выглядзе праграмы).
(Схематычна дадзеныя спосабы паказаны ў прыкладзе 8.1.)
8.2. Выканаўца Чарцёжнік
У 6-м класе вы пазнаёміліся з выканаўцам Чарцёжнік, прызначаным для пабудовы рысункаў і чарцяжоў на каардынатнай плоскасці (прыклад 8.2).
Чарцёжнік мае пяро, якім ён можа рысаваць адрэзкі на плоскасці. У зыходным становішчы пяро ўзнята і знаходзіцца над пунктам (0, 0) — пачаткам каардынат. Пасля завяршэння рысавання пяро таксама павінна быць узнята.
Сістэма каманд Чарцёжніка:
Каманда |
Дзеянне |
ToPoint(x,y) |
Перамясціць пяро ў пункт (x, y) |
PenUp |
Узняць пяро |
PenDown |
Апусціць пяро |
Field(N,M) |
Стварыць поле памерам N × M |
OnVector(a,b) |
Зрушыць пяро на а адзінак па гарызанталі і b адзінак па вертыкалі |
Прыклад 8.3. Складзём алгарытм рашэння задачы.
Прамавугольны ўчастак, даўжыня якога ў 2 разы большая за шырыню, абгарадзілі плотам даўжынёй 120 м. Вызначыце даўжыню і шырыню ўчастка. Напішыце праграму, выканаўшы якую выканаўца Чарцёжнік пабудуе чарцёж плота гэтага ўчастка. Маштаб: 1 клетка роўна 10 м.
Слоўнае апісанне алгарытму:
- Даўжыня ўчастка ў 2 разы большая за шырыню, таму ў суме даўжыня і шырыня складуць 3 аднолькавыя часткі. Плот абгароджвае ўчастак па перыметры, роўным падвоенай суме даўжыні і шырыні, г. зн. перыметр роўны 6 аднолькавым часткам.
- Шырыня: 120 : 6 = 20 м.
- Даўжыня ў 2 разы большая за шырыню: 20 ∙ 2 = 40 м.
8.3. Алгарытмічная канструкцыя паслядоўнасць
Існуе вялікая колькасць алгарытмаў, у якіх усе каманды выконваюцца паслядоўна адна за адной у тым парадку, у якім яны запісаны. У такіх алгарытмах адсутнічаюць каманды, што мяняюць парадак выканання іншых каманд. Такія праграмы вы складалі ў мінулым годзе для выканаўцы Чарцёжнік.
Алгарытмічная канструкцыя паслядоўнасць — паслядоўнасць каманд алгарытму, што выконваюцца ў тым парадку, у якім яны запісаны.
Алгарытмічная канструкцыя паслядоўнасць адлюстроўвае натуральны, паслядоўны парадак выканання дзеянняў у алгарытме.
Паслядоўнасць выкарыстоўвалася ў прыкладзе 8.3, у якім апісваліся алгарытмы вылічэння даўжыні і шырыні ўчастка і пабудовы прамавугольніка выканаўцам Чарцёжнік.
Алгарытмічная канструкцыя паслядоўнасць паказана ў прыкладзе 8.4 i прыкладзе 8.5.
8.4. Дапаможныя алгарытмы
Часта ў адной праграме трэба рысаваць адзін і той жа відарыс некалькі разоў. Атрыманне гэтага відарыса зручна аформіць у выглядзе дапаможнага алгарытму, які можна выкарыстоўваць патрэбную колькасць разоў.
Дапаможны алгарытм — алгарытм, што цалкам выкарыстоўваецца ў складзе іншага алгарытму.
Дапаможны алгарытм рашае некаторую падзадачу асноўнай задачы. Выклік дапаможнага алгарытму ў праграме замяняе некалькі каманд адной.
Прыклад 8.6. Напішам праграму, выканаўшы якую Чарцёжнік нарысуе відарыс:
Дадзены рысунак складаецца з аднолькавых фігур. Для рысавання адной з іх можна аформіць дапаможны алгарытм figura.
Апісанне асноўнага алгарытму:
- перамяшчэнне ў пачатковы пункт;
- рысаванне фігуры;
- перамяшчэнне да другой фігуры;
- рысаванне фігуры;
- перамяшчэнне да трэцяй фігуры;
- рысаванне фігуры.
Пры рашэнні задач над праектам могуць працаваць некалькі чалавек. Кожны з членаў калектыву робіць частку сваёй працы і афармляе яе як асобны дапаможны алгарытм.
Алгарытмы пабудовы чарцяжоў чалавек распрацоўвае з глыбокай старажытнасці. З’яўленне чарцяжоў звязана з практычнай дзейнасцю чалавека — узвядзеннем умацаванняў і гарадскіх будынкаў. Першыя звесткі пра чарцяжы, што нагадваюць сучасныя, звязаны з імем Леанарда да Вінчы (1452—1519) — італьянскага вучонага і мастака, які ў тэхнічных рысунках і эскізах раскрываў свае ідэі ў галіне тэхнікі і будаўніцтва. У цяперашні час чарцяжы шырока ўжываюцца ў розных галінах будаўніцтва, сельскай гаспадаркі, прамысловасці і г. д. Сёння для пабудовы чарцяжоў выкарыстоўваюцца спецыяльныя праграмы, якія дазваляюць аўтаматызаваць працэс чарчэння. Вось лагатыпы такіх праграм: |
Прыклад 8.1. Прыклад 8.2. Поле выканаўцы Чарцёжнік. Прыклад 8.3. Запіс алгарытму па дзеяннях:
Блок-схема алгарытму: Праграма для выканаўцы:
Вынік работы праграмы: |
Прыклад 8.4. Алгарытм гатавання бутэрброда:
Прыклад 8.5. Алгарытм выканання лабараторнай работы па біялогіі «Будова інфузорыі туфелькі»:
|
Прыклад 8.6. Праграма для выканаўцы Чарцёжнік будзе наступнай:
Вынік выканання праграмы: |