Алгоритми та програми by Valeria  - Illustrated by Valeria - Ourboox.com
This free e-book is brought to you by
Ourboox.com

Ourboox is the world's simplest platform for creating and sharing amazing ebooks.

You too can become one of our 75,000 authors.

Join us now and start creating your own books right away.

Create your own free book

Алгоритми та програми

by

Artwork: Valeria

Member Since
May 2018
Published Books
4

1. Виконавці алгоритмів та їхні системи команд.

2. Способи опису алгоритму. Програма.Середовище опису й виконання алгоритмів.

3. Лінійні алгоритми.

4. Алгоритми з розгалуженнями.

5. Алгоритми з повтореннями

1

Виконавці алгоритмів та їхні системи команд. 

Способи опису алгоритму

Поняття алгоритма, системи команд виконавця

Слово «алгоритм» походить від «algorithmi» – латинської форми написання імені великого математика аль-Хорезмі, який сформулював правила виконання арифметичних дій. Тому спочатку під алгоритмом розуміли тільки правила виконання чотирьох арифметичних дій над багатоцифровими числами в десятковій системі числення. Зараз він є одним із фундаментальних понять інформатики.

Алгоритм – це скінчена послідовність команд (вказівок), що визначає, які дії та у якому порядку потрібно виконати, щоб досягти поставленої мети.
Алгоритм складається із команд – окремих указівок виконавцеві виконати деякі конкретні дії. Команди алгоритму виконуються одна за одною, і на кожному кроці відомо, яка команда повинна виконуватися. Почергове виконання команд за кінцеве число кроків приводить до розв’язання задачі. Для того щоб виконавець міг розв’язати задачу за заданим алгоритмом, він повинен уміти виконувати кожну з дій, що вказується командами алгоритму.
Система команд виконавця – сукупність команд, які можуть бути виконані виконавцем; кожна команда алгоритму входить до системи команд виконавця.
В основі роботи автоматичних пристроїв лежить положення, що найпростіші операції, на які розпадається процес розв’язання задачі, може виконати машина, яка спеціально створена для виконання окремих команд алгоритму і виконує їх у послідовності, вказаній в алгоритмі.

 

2
Алгоритми та програми by Valeria  - Illustrated by Valeria - Ourboox.com

Залежно від цілей, початкових умов задачі, шляхів її вирі­шення алгоритми поділяються на:

Механічні — задають певні дії, позначаючи їх у єдиній послі­довності, забезпечуючи тим самим однозначний результат.

Імовірнісні — дають програму вирішення задачі кількома шля­хами, що приводить до ймовірнісного досягнення результату.

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

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

До слова «алгоритм» близькі за значенням слова: спосіб, ре­цепт. Однак алгоритми в інформатиці — це не тільки рецепти роз­в’язування задач. Алгоритми розробляють, насамперед, із метою автоматизації дій виконавця.

Составление алгоритма начинается с разбивки описываемого процесса на последовательность отдельных шагов. Свойство разбивания алгоритма па отдельные шаги называют дискретностью алгоритма. Каждый шаг алгоритма формулируется в виде инструкций (команд), то есть определенных предписаний исполнителю.

4

Виконавець і властивості алгоритму

Алгоритм розв’язування однієї й тієї самої задачі можна подати по-різному. Якщо ви навчаєте чогось собаку, ви будете давати усні команди зрозумілою для неї мовою. Якщо ж ви навчаєте свого при­ятеля їздити на велосипеді, то система команд, які він може вико­нати, буде, звичайно, ширшою. Алгоритм їзди ви можете описати усно або на папері.

Алгоритми складаються з орієнтацією на певного виконавця ал­горитму: дресированої тварини, людини, автоматичного пристрою, комп’ютера. До складу алгоритму мають належати команди, які ви­конавець розуміє та може виконати.

Алгоритми складаються з урахуванням можливостей вико­навця.

Виконавець алгоритму — об’єкт (людина, комп’ютер), що здатний правильно зрозуміти й точно виконати всі дії алго­ритму.

Розбіжності між виконавцями алгоритмів: якщо люди роб­лять багато справ, навіть не усвідомлюючи, що при цьому вони використовують якісь алгоритми, то комп’ютери не можуть фун­кціонувати без програм, накази яких вони точно виконують.

Механічний (машинний) алгоритм — алгоритм, для якого виконавцем є ЕОМ. Такий алгоритм повинен відповідати низці вимог.

5

Перейдіть за посиланням та виконайте завдання:

6

Властивості алгоритмів. Способи подання алгоритмів.

Незважаючи на різноманіття алгоритмів, в них можна знайти багато спільного. І ці спільни риси називаються властивостями алгоритмів.

Властивості алгоритмів:

  • Дискретність.

  • Визначеність (однозначність).

  • Формальність.

  • Результативність.

  • Масовість.

Будь-який алгоритм подає розв’язування задачі як послідовність відокремлених простих дій. Вони виконуються почергово, одна за одною, в усталеному порядку. Тільки після виконання однієї дії можна перейти до наступної. Така розчленованість процесу виконання алгоритму називається дискретністю (від лат. discretus – розділений, переривчатий).

За скінченну кількість кроків алгоритм має приводити до здобуття потрібного результату або до досягнення потрібної мети. Цю властивість алгоритму називають скінченністю або результативністю.

Разом із заданою сукупністю вхідних даних, алгоритм цілком визначає дії виконавця та їх послідовність при розв`язанні задачі. Кожна команда алгоритму однозначно встановлює, що треба робити на даному кроці та до якої команди перейти на наступному. Будь-які розбіжності в тлумаченні дій, приписуваних командою, виключаються. Не може виникнути й потреби у будь-якій додатковій інформації ззовні або у прийнятті рішень самим виконавцем. Цю властивість алгоритму називають визначеністю або детермінованістю (від лат. determinare – визначати).

Переважно один і той самий алгоритм має змогу виконати не один, а декілька виконавців – і отримати однакові результати. Ця властивість називається формальністю або певністю.

Зазвичай алгоритм складається так, щоб його можна було застосовувати до розв’язання не однієї конкретної задачі, а всіх задач певного типу, які відрізняються між собою вхідними даними. Ця властивість алгоритму називається масовістю. Вона не означає, що вхідним даним можна надавати довільних значень. Вони звичайно обмежені змістом задачі, застосованим способом її розв’язання тощо. Для кожного алгоритму австановлюється відповідна область припустимих значень вхідних даних, або, інакше кажучи, область його застосування.

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

При складанні алгоритмів можна поєднувати різні форми подання алгоритмів.
Процес алгоритмізації – це визначення елементарних дій та порядку їх виконання для розв’язання поставленого завдання. Існують різні способи запису алгоритмів (словесний, формульно-словесний, метод блок-схем, програмний та ін.), які застосовуються для представлення алгоритму у вигляді, що однозначно розуміється і розробником, і виконавцем алгоритму.
Для опису алгоритмів людина часто користується природною мовою, але для запису багатьох алгоритмів природна мова виявилась незручною, тому виникла необхідність у створенні штучних мов, наприклад мови математичних формул, хімічних процесів тощо. Існує спеціальна навчальна алгоритмічна мова, яка була створена для запису алгоритмів на папері; вона використовує слова природної мови, але має більш жорстку структуру.

7

Перейдіть за посиланням та пограйте в гру: http://www.umapalata.com/uschool/expo/vashygymaga/13309.html?LANG=RU

8

СПОСОБИ ТА ФОРМИ ОПИСУ АЛГОРИТМІВ

  1. Словесні

  2. Словесно-формульні

  3. Графічні (схеми)

  4. Скінченний набір кодів

Алгоритм може бути виражений в усній словесно-формульній формі, записаний у вигляді тексту (існує спеціальна навчальна алгоритмічна мова, що дає змогу записати алгоритм із вико­ристанням розмовних слів для більш зрозумілого відображення) або зображений у вигляді схеми.

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

Схема — це графічне зображення алгоритму за допомогою геометричних блоків, які позначають ту або іншу команду. Графічне зображення алгоритму дає змогу наочно простежити й осмислити процес виконання алгоритму. Використовувані гео­метричні фігури відповідають одному кроку алгоритму й мають стандартний зміст.

Схема складається з елементів двох типів:

1-й тип — графічні фігури, кожна з яких відображає один з етапів процесу рішення задачі та містить у собі текст відповідної команди;

2-й тип — лінії зі стрілками, які вказують послідовність (порядок) виконання етапів. У цілому такий спосіб запису алго­ритмів можна розглядати як своєрідну алгоритмічну мову — сис­тему позначень і правил для однотипного запису алгоритмів та їх виконання.

Блок-схема алгоритмів — графічне зображення логічної структури алгоритму. Кожний етап представляється у вигляді геометричної фігури (блоку), яка має певну форму залежно від характеру операції. Блоки на схемі з’єднуються стрілками (лініями зв’язку), які визначають послідовність виконання опе­рацій і утворюють логічну структуру алгоритму.

У процесі розробки алгоритмів використовується три основні структури: слідування, розгалуження, повторення.

Команда — записаний в алгоритмі наказ виконавцеві вико­пати менпу закінчену дію.

Блок-схема — це наочне графічне зображення алгоритму, коли окремі його дії (етапи) зображуються за допомогою різних геометричних фігур (блоків), а зв’язки між етапами вказуються за допомогою стрілок, що з’єднують ці фігури.

План складання алгоритму

1. Уважно прочитати умову задачі.

2. Визначити:

а) що дано (аргументи);

б) що потрібно знайти (результати);

в) у якому вигляді (тип аргументів і результатів).

3. Записати заголовок алгоритму.

4. Визначити шляхи вирішення задачі та виявити необхідні проміжні величини.

5. Записати алгоритм алгоритмічною мовою. 

6. Перевірити правильність складання алгоритму при конк­ретних значеннях аргументів



Найбільше поширення для запису логічної структури алгоритмів отримали графічні (структурні) схеми, які спрощують складання та аналіз алгоритму, полегшують перехід від запису алгоритму до написання програми.
Графічна схема (блок-схема) алгоритму – це графічне зображення алгоритму у вигляді спеціальних блоків з необхідними словесними поясненнями. Кожний етап алгоритму представляється у вигляді геометричної фігури (блоку), що має певну форму в залежності від характеру операції. Блоки на схемі з’єднуються стрілками (лініями зв’язку), які визначають послідовність виконання операцій та утворюють логічну структуру алгоритму.
Важливою особливістю базових структур алгоритмів є те, що вони мають один вхід і один вихід, що дозволяє при відносній незалежності конструювати окремі блоки алгоритмів, а потім окремо розроблені структури з’єднувати між собою (вихід однієї базової структури сполучається із входом іншої). Весь алгоритм представляє лінійну послідовність базових структур.

9

Виконайте завдання

10

Програма. Середовище опису й виконання алгоритмів

 

Що таке програма? Які існують середовища опису та виконання алгоритму?

Якщо алгоритм призначено для виконання за допомогою комп’ютера, його записують спеціальною мовою, яка має бути йому «зрозумілою». Такий запис називають програмою.

Програ­ми створюють для опрацювання інформаційних даних за допомогою комп’ютера. Говорять, що виконавцем програм є комп’ютер.

Комп’ютерна програма – це алгоритм опрацювання даних, записаний спеціальною мовою та призначений для виконання комп’ютером

Переглянути процес виконання програми на комп’ютері деяким виконавцем, що має свою систему команд, і її результат можна в середовищі виконання алгоритму.

Комп’ютерне середовище виконання алгоритму – це спе­ціальна програма, яка дає змогу створювати і виконувати алгоритми для обраних виконавців з визначеною системою команд на комп’ютері.

Таких програм може бути безліч. Кожна з них створюєть­ся людьми з певною навчальною метою. Прикладом такого комп’ютерного середовища є програмне середовище Скретч.

 

 

11

Середовище виконання алгоритму – програма Scratch

Як завантажити середовище Скретч?
Вікно програми Скретч має складові, подібні до вікон програм, які ми вже вивчали: рядок заголовка, меню, кнопки управління вікном  тощо
У цьому середовищі виконавцем алгоритму є Рудий кіт. Для нього існує своя система команд. З кожною командою пов’язана певна подія, яка відтворюється на сцені.

Завантажити Скретч можна за посиланням: http://scratch.mit.edu/download

12

Виконавців алгоритму в середовищі Скретч ще називають спрайтами. У перекладі з англійської мовиsprite — світля­чок або ельф.
Програма, що виконується в середовищі Скретч, складається з команд, які можна обрати в контейнері.  Вони реалізують команди із системи команд виконавця алгоритмів у середовищі, які
об’єднані в групи:

  •  руху,

  • зміни вигляду,

  •  малювання,

  •  відтворення звуку тощо.

    Головне програмне вікно середовища поділено на декілька частин, згрупованих у три стовпчики.

    • лівий стовпчик містить палітру блоків.

    • центральний стовпчик містить піктограму активного спрайту з координатами його розташування на сцені та 3 закладки:Скрипти, Образи, Звуки;

    • правий стовпчик містить Сцену і Cписок спрайтів.

    Спрайт — це об’єкт Scratch, що пов’язаний із зображеннямм, набором змінних і скриптів, які визначають його поведінку.

    Як усталено використовують спеціального виконавця вказівок — Рудого кота . Він може рухатися, говорити, змінювати зовнішній вигляд, взаємодіяти з іншими виконавцями на сцені. Інших виконавців можна долучати:

    • з бібліотеки Scratch;

    • з мережі (локальної чи глобальної);

    • як об’єкти, створені в інших графічних програмах (наприклад, GIMP)

    • як об’єкти, створені у графічому редакторі, вбудованому у Scratch.

13

Скрипт (script, сценарій, метод) — послідовність вказівок, що визначає, які дії і в якому порядку потрібно виконати певному об’єкту (спрайту).

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

Стек (stack) — набір послідовно сполучених різнокольорових графічних блоків у межах однієї події.

Блок — це мінімальний фрагмент програми у Scratch: змінна, оператор, функція або структура, що керує. Блоки згруповано у 8 категорій (див. далі ілюстрації).

Подія — натискання на задану клавішу (наприклад, пропуск), клацання по виконавцю або по сцені, надходження повідомлення від іншого виконавця і т.і.

Образи (вигляд спрайту) — сукупність зображень одного й того ж об’єкту (спрайту), кожне з яких дещо відрізняється від попередніх.

Звуки — приєднані звукові ефекти й музика.

Сцена — область, в якій діє об’єкт (спрайт) при виконанні програми.

Зображення вигляду виконавця, фон сцени і програму мож­на зберегти у файлі. Файл, створений у середовищі Скретч, називають проектом.

 

14

15

Відкривають існуючий проект за таким алгоритмом:

  • У меню Файл обрати вказівку Відкрити.

  • У вікні Відкрити проект вибрати потрібну папку, напри­клад, папку Навчальні проекти.

  • Натиснути кнопку Гаразд.

  • Вибрати файл проекту. Знову натиснути кнопку Гаразд.

Які особливості режимів роботи в середовищі Скретч?
Під кнопками управління вікном середовища розміщено кноп­ки перемикання його режимів роботи.
У режимі перегляду ми бачимо тільки сцену виконання алго­ритму, що займає весь екран. Вийти з нього можна, натиснувши кнопку повернення у верхньому правому кутку екрана Щоб виконавець алгоритму розпочав виконувати команди на сцені, натискають на зелений прапорець. КнопкаЗупинити все припиняє виконання алгоритму.
У режимах У зменшений розмір та У певний розмір відобра­жаються всі складові вікна програмного середовища, як пока­зано на попередньому слайді.
У першому режимі сцена зменшена.
У цих режимах алгоритм можна виконувати покомандно, групою або цілком.
Наприклад, якщо в наборі команд, що міститься у вкладці Скрипти, обрати одну команду та двічі клацнути на ній мишею, то на сцені відтворюватиметься подія, що відповідає цій команді.
Натискання на кнопку Зупинити всеприпиняє виконання алгоритму.

16

Ще раз розібратися та повторити вам допоможе відеоурок:

17

Установи відповідності між зображеннями і їхніми назвами у середовищі Scratch:

18

Кросворд

Дайте відповідь на наступні запитання:

19

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

Види алгоритмів. Поняття лінійного алгоритму

Команди в алгоритмах записують одна за одною в певному порядку, а от виконуються вони не завжди в такій послідовності. Залежно від порядку виконання команд алгоритми поділяють на три типи:

• лінійні алгоритми (слідування);

• алгоритми з розгалуженням;

• алгоритми з повторенням.

Алгоритм, у якому команди виконуються послідовно одна за одною від початку до кінця, називають лінійним. Наприклад, перехід вулиці, обчислення суми чисел, саджання дерева тощо.

Вигляд лінійного алгоритму:

20

21

Лінійний алгоритм переходу вулиці:

22

Виконайте завдання:

 

23

Поняття алгоритму з розгалуженням

Висловлювання – це речення, яке містить твердження про певний об’єкт або про зв’язки між об’єктами.

Висловлювання може бути істинним або хибним.

Висловлювання вважається істинним, якщо воно відповідає реальній ситуації, і хибним, якщо не відповідає.

Висловлювання «Якщо – то» називають умовним, бо воно містить умову.

Команда перевірки умови визначає істинність чи хибність певної умови.

Якщо умова виконується, то вважається, що результатом виконання команди перевірки умови є істина, або true. Інакше, тобто якщо умова не
виконується, то вважається, що результатом виконання цієї команди є хиба, або false.

Розгалуженням називають фрагмент алгоритму, що містить команду перевірки умови і послідовності команд, які будуть виконуватися або не
виконуватися залежно від результату виконання команди перевірки умови.

Характерною рисою розгалуження є те, що при кожному його виконанні деякі команди будуть виконуватися, причому кожна по одному разу, а
деякі – виконуватися не будуть. Це залежить від результату виконання команди перевірки умови.

Вибір однієї з двох послідовностей дій залежно від виконання або невиконання деякої умови називають розгалуженням.

Алгоритм, що містить одну або кілька умов і, відповідно, дві та більше гілок, називають алгоритмом з розгалуженням.

 

24

Вигляд алгоритму з розгалуженням:

25

Поняття алгоритму з повторенням

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

Багаторазове виконання тієї самої послідовності команд доти, доки виконується визначена наперед умова, називають циклом (повторенням). Алгоритм, що містить цикли, називають циклічним алгоритмом або алгоритмом з повторенням. Майже всі мови програмування містять оператори розгалужень і циклів. Не є винятком і Scratch.

Вигляд алгоритму з повторенням:

26

Розглянемо використання цього виду циклу, виконавши побудову зірочки з восьми променів:

Команди Scratch для побудови зірки із восьми променів:

Команда Scratch Положення спрайта Пояснення дій спрайта
Початкове положення спрайта
Повертає на кут 45° проти годинникової стрілки
Переміщується на 3° кроків

 

Повертає на кут 90° за годинниковою стрілкою
Переміщується на 30 кроків
Повертає на кут 45° проти годинникової стрілки
Переміщується на 30 кроків
Повертає на кут 90° за годинниковою стрілкою
Переміщується на 30 кроків
27

Визначити види алгоритмів:

28
This free e-book is brought to you by
Ourboox.com

Ourboox is the world's simplest platform for creating and sharing amazing ebooks.

You too can become one of our 75,000 authors.

Join us now and start creating your own books right away.

Create your own free book

COMMENTS 0

Leave a Reply