Обстановка, у якій виконує алгоритм виконавець. Концепція виконавця алгоритму. Розробка та виконання

Ключові слова:

  • алгоритм
  • властивості алгоритму
    • дискретність
    • зрозумілість
    • визначеність
    • результативність
    • масовість
  • виконавець
  • характеристики виконавця
    • коло розв'язуваних завдань
    • середа
    • режим роботи
    • система команд
  • формальне виконання алгоритму

3.1.1. Поняття алгоритму

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

Приклад 1. Завдання «Знайти середнє арифметичне двох чисел» вирішується у три кроки:

  • задумати два числа;
  • скласти два задумані числа;
  • отриману суму поділити на 2.

Приклад 2. Завдання «Внести гроші на рахунок телефону» поділяється на такі кроки:

  • підійти до терміналу оплати платежів;
  • вибрати оператора зв'язку;
  • ввести номер телефону;
  • перевірити правильність введеного номера;
  • вставити грошову купюру у купюроприймач;
  • дочекатись повідомлення про зарахування грошей на рахунок;
  • отримати чек.

Приклад 3. Етапи розв'язання задачі «Намалювати веселого їжачка» представлені графічно:

Знаходження середнього арифметичного, внесення грошей на телефонний рахунок та малювання їжака - на перший погляд абсолютно різні процеси. Але вони мають спільна риса: кожен із цих процесів описується послідовностями коротких вказівок, точне слідування яким дозволяє отримати необхідний результат. Послідовності вказівок, наведені у прикладах 1-3 є алгоритмами вирішення відповідних завдань. Виконавець цих алгоритмів – людина.

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

У загальному вигляді схему роботи алгоритму можна подати так (рис. 3.1):

Рис. 3.1.
Загальна схема роботи алгоритму

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

Анімації "Робота з алгоритмом", "Найбільший спільний дільник", "Найменше загальне кратне" (http://school-collection.edu.ru/) допоможуть вам згадати деякі алгоритми, вивчені на уроках російської мови та математики.

Приклад 4. Деякий алгоритм призводить до того, що з одного ланцюжка символів виходить новий ланцюжок таким чином:

  1. Обчислюється довжина (у символах) вихідного ланцюжка символів.
  2. Якщо довжина вихідного ланцюжка непарна, то до вихідного ланцюжка праворуч приписується цифра 1, інакше ланцюжок не змінюється.
  3. Символи попарно змінюються місцями (перший – з другим, третій – з четвертим, п'ятий – з шостим тощо).
  4. Праворуч до отриманого ланцюжка приписується цифра 2.

Ланцюжок, що вийшов таким чином, є результатом роботи алгоритму.

Так, якщо вихідним був ланцюжок А#В, то результатом роботи алгоритму буде ланцюжок #А1В2, а якщо вихідним ланцюжком був АБВ@, то результатом роботи алгоритму буде ланцюжок БА@В2.

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

Кожен алгоритм призначений для певного виконавця.

Розрізняють формальних та неформальних виконавців. Формальний виконавець ту саму команду завжди виконує однаково. Неформальний виконавець може виконувати команду по-різному.

Розглянемо докладніше безліч формальних виконавців. Формальні виконавці надзвичайно різноманітні, але кожного з них можна зазначити такі характеристики: коло розв'язуваних завдань (призначення), середу, систему команд і режим роботи.

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

Середовище виконавця. Область, обстановку, умови, у яких діє виконавець, прийнято називати середовищем цього виконавця. Вихідні дані та результати будь-якого алгоритму завжди належать серед того виконавця, для якого призначений алгоритм.

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

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

Розглянемо приклади виконавців.

Приклад 5. Виконавець Черепашка рухається на екрані комп'ютера, залишаючи слід у вигляді лінії. Система команд Черепашки складається з двох команд:

    Вперед n (де n - ціле число) - викликає рух Черепашки на n кроків у напрямі руху - у тому напрямку, куди розгорнуті її голова та корпус;

    Направо m (де m – ціле число) – викликає зміну напрямку руху Черепашки на m градусів за годинниковою стрілкою.

Запис Повторіть k [<Команда1> <Команда2> ... <Командаn>] означає, що послідовність команд у дужках повториться k разів.

Подумайте, яка постать з'явиться на екрані після виконання Черепашкою наступного алгоритму.

    Повтори 12 [Направо 4 5 Вперед 20 Направо 45]

Приклад 6. Система команд виконавця Обчислювач складається з двох команд, яким надано номери:

    1 - відніміть 1
    2 - помнож на 3

Перша їх зменшує число на 1, друга збільшує число 3 разу. При записі алгоритмів для стислості вказуються лише номери команд. Наприклад, алгоритм 21212 означає наступну послідовність команд:

    помнож на 3
    віднімай 1
    помнож на 3
    віднімай 1
    помнож на 3

За допомогою цього алгоритму число 1 буде перетворено на 15: ((1-3-1)-3-1)-3 = 15.

Приклад 7. Виконавець Робот діє на картатий полі, між сусідніми клітинами якого можуть стояти стіни. Робот пересувається по клітинах поля і може виконувати наступні команди, яким надано номери:

    1 - Вгору
    2 - Вниз
    3 - Праворуч
    4 - Ліворуч

Під час виконання кожної такої команди Робот переміщається до сусідньої клітини у зазначеному напрямку. Якщо ж у цьому напрямку між клітинами стоїть стіна, то робот руйнується. Що станеться з Роботом, якщо він виконає послідовність команд 32323 (тут цифри позначають номери команд), почавши рух із клітини А? Яку послідовність команд слід виконати Роботу, щоб переміститися з клітини А в клітину, не зруйнувавшись від зустрічі зі стінами?

При розробці алгоритму:

  1. виділяються фігурують у задачі об'єкти, встановлюються властивості об'єктів, відносини між об'єктами та можливі дії з об'єктами;
  2. визначаються вихідні дані та необхідний результат;
  3. визначається послідовність дій виконавця, що забезпечує перехід від вихідних даних до результату;
  4. Послідовність дій записується за допомогою команд, що входять до системи команд виконавця.

Можна сміливо сказати, що алгоритм - модель діяльності виконавця алгоритмів.

3.1.3. Властивості алгоритму

Не будь-яка інструкція, послідовність розпоряджень чи план дій може вважатися алгоритмом. Кожен алгоритм обов'язково має такі властивості: дискретність, зрозумілість, визначеність, результативність і масовість.

Властивість дискретності означає, що шлях розв'язання задачі поділено окремі кроки (дії). Кожній дії відповідає розпорядження (команда). Тільки виконавши одну команду, виконавець може розпочати виконання наступної команди.

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

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

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

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

Приклад 8. Розглянемо один із методів знаходження всіх простих чисел, що не перевищують n. Цей метод називається «решета Ератосфена», що на ім'я запропонував його давньогрецького вченого Ератосфена.

Для знаходження всіх простих чисел, не більших за задане число n, слідуючи методу Ератосфена, потрібно виконати наступні кроки:

  1. виписати поспіль усі цілі числа від 2 до n (2, 3, 4, ..., n);
  2. укласти в рамку 2 - перше просте число;
  3. викреслити зі списку усі числа, що діляться на останнє знайдене просте число;
  4. знайти перше невідзначене число (відзначені числа - закреслені числа або числа, ув'язнені в рамку) і укласти його в рамку - це буде просте число;
  5. повторювати кроки 3 і 4 доти, доки залишиться невідзначених чисел.

Більш наочне уявлення про спосіб знаходження найпростіших чисел ви можете отримати за допомогою анімації «Решето Ератосфена» (http://school-collection.edu.ru/).

Розглянута послідовність дій є алгоритмом, оскільки вона задовольняє властивостям:

  • дискретність - процес знаходження простих чисел розбитий на кроки;
  • зрозумілості - кожна команда зрозуміла учню 9 класу, який виконує цей алгоритм;
  • визначеності - кожна команда трактується та виконується виконавцем однозначно; є вказівки щодо черговості виконання команд;
  • результативності - через кілька кроків досягається результат;
  • масовості - послідовність дій застосовна будь-якого натурального n.

Розглянуті властивості алгоритму дають змогу дати більш точне визначення алгоритму.

3.1.4. Можливість автоматизації діяльності людини

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

Розв'язання задачі за готовим алгоритмом вимагає від виконавця лише суворого дотримання заданих розпоряджень.

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

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

  1. Якщо число предметів у купці кратно 3, то поступитися ходом противнику, інакше починати гру.
  2. Своїм черговим ходом щоразу доповнювати кількість предметів, взятих суперником, до 3 (число предметів, що залишилися, має бути кратно 3).

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

  1. процес розв'язання задачі представляється у вигляді послідовності найпростіших операцій;
  2. створюється машина (автоматичний пристрій), здатна виконувати ці операції у послідовності, заданій в алгоритмі;
  3. людина звільняється від рутинної діяльності, виконання алгоритму доручається автоматичному устрою.

Найголовніше

Виконавець - певний об'єкт (людина, тварина, технічний пристрій), здатний виконувати певний набір команд. Формальний виконавець ту саму команду завжди виконує однаково. Для кожного формального виконавця можна вказати: коло завдань, середу, систему команд і режим роботи.

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

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

Запитання та завдання

  1. Що називають алгоритмом?
  2. Підберіть синоніми до слова «розпорядження».
  3. Наведіть приклади алгоритмів, що вивчаються вами у школі.
  4. Хто може бути виконавцем алгоритму?
  5. Наведіть приклад формального виконавця. Наведіть приклад, коли людина виступає у ролі формального виконавця.
  6. Які команди мають бути у робота, який виконує функції: а) касира в магазині; б) двірника; в) охоронця?
  7. Від чого залежить коло завдань виконавця «комп'ютер»?
  8. Розгляньте як виконавець текстовий процесор, що є на вашому комп'ютері. Охарактеризуйте коло розв'язуваних цим виконавцем завдань та його середовище.
  9. Що таке команда система команд виконавця?
  10. Перелічіть основні властивості алгоритму.
  11. До чого може призвести відсутність будь-якої властивості алгоритму? Наведіть приклади.
  12. У чому важливість можливості формального виконання алгоритму?
  13. Послідовність чисел будується за наступного алгоритму: перші два числа послідовності приймаються рівними 1; кожне наступне число послідовності приймається рівним сумі двох попередніх чисел. Запишіть 10 перших членів цієї послідовності.
  14. Деякий алгоритм отримує з одного ланцюжка символів новий ланцюжок в такий спосіб. Спочатку записується вихідний ланцюжок символів, після нього записується вихідний ланцюжок символів у зворотному порядку, потім записується буква, що йде в російському алфавіті за тією буквою, яка у вихідному ланцюжку стояла на останньому місці. Якщо у вихідному ланцюжку на останньому місці стоїть буква Я, то як наступна буква записується буква А. Ланцюжок, що вийшов, є результатом роботи алгоритму. Наприклад, якщо вихідний ланцюжок символів був ДІМ, то результатом роботи алгоритму буде ланцюжок ДОММОДН. Дано ланцюжок символів КОМ. Скільки букв О буде в ланцюжку символів, який вийде, якщо застосувати алгоритм до цього ланцюжка, а потім ще раз застосувати алгоритм до результату його роботи?
  15. Знайдіть у мережі Інтернет анімацію кроків алгоритму Ератосфена. За допомогою алгоритму Ератосфена знайдіть усі прості числа, що не перевищують 50.
  16. Що буде результатом виконання Черепашкою (див. приклад 5) алгоритму?
      Повтори 8 [Направо 45 Вперед 45]
  17. Запишіть алгоритм для виконавця Обчислювач (приклад 6), який містить не більше 5 команд:
      а) здобуття з числа 3 числа 16;
      б) отримання у складі 1 числа 25.
  18. Система команд виконавця Конструктор складається з двох команд, яким надано номери:
      1 - приписати 2
      2 - розділити на 2

    По першій з них до числа приписується праворуч 2, по друге число ділиться на 2. Як буде перетворено число 8, якщо виконавець виконає алгоритм 22212? Складіть алгоритм у системі команд цього виконавця, яким число 1 буде перетворено на число 16 (в алгоритмі має бути трохи більше 5 команд).

  19. У якій клітині повинен бути виконавець Робот (приклад 7), щоб після виконання алгоритму 3241 у неї і повернутися?

2.1.1. ПОНЯТТЯ АЛГОРИТМА
2.1.2. ВИКОНАВЕЦЬ АЛГОРИТМУ
2.1.3. ВЛАСТИВОСТІ АЛГОРИТМА
2.1.4. МОЖЛИВІСТЬ АВТОМАТИЗАЦІЇ ДІЯЛЬНОСТІ ЛЮДИНИ

1. Ознайомтеся з матеріалами презентації до параграфа, що міститься в електронному додатку до підручника. Чи доповнює презентація інформацію, що міститься у тексті параграфа? Якими слайдами ви могли б доповнити презентацію?

2. Що називається алгоритмом?
Алгоритм – це опис послідовності кроків у розв'язанні задачі, що призводять від вихідних даних до необхідного результату.

3. Підберіть синоніми до слова «розпорядження».
Команда, вказівка, призначення, розпорядження, правило.

4. Наведіть приклади алгоритмів, які ви вивчаєте в школі.

5. Хто може бути виконавцем алгоритму?

6. Наведіть приклад формального виконавця. Наведіть приклад, коли людина виступає у ролі формального виконавця.

7. Від чого залежить коло завдань виконавця «комп'ютер»?
Коло розв'язуваних завдань виконавця «Комп'ютер» залежить від встановлених програм і цілей, котрим його використовує людина.

8. Розгляньте як виконавця текстовий процесор, що є на вашому комп'ютері. Охарактеризуйте коло розв'язуваних цим виконавцем завдань та його середовище.
Текстовий процесор, що є на комп'ютері вирішує завдання з виведення вже набраного або набирається тексту на монітор, дозволяє виконати редагування цього тексту, змінити колір, розмір, вид шрифту, а також зберегти цей документ у файл.

9. Що таке команда, система команд виконавця?

10. Які команди мають бути у робота, який виконує функції: а) касира в магазині; б) двірника; в) охоронця?

11. Перелічить основні властивості алгоритму.

12. До чого може призвести відсутність будь-якої властивості алгоритму? Наведіть приклади.

13. У чому важливість можливості формального виконання алгоритму?

14. Послідовність чисел будується за наступним алгоритмом: перші два числа послідовності приймаються рівними 1; кожне наступне число послідовності приймається рівним сумі двох попередніх чисел. Запишіть 10 перших членів цієї послідовності. З'ясуйте, як називається ця послідовність.
Послідовність Фібоначчі.
1, 1, 2, 3, 5, 8, 13, 21, 34, 55.

15. Деякий алгоритм отримує з одного ланцюжка символів новий ланцюжок в такий спосіб. Спочатку записується вихідний ланцюжок символів, після нього записується вихідний ланцюжок символів у зворотному порядку, потім записується буква, що йде в російському алфавіті за тією буквою, яка у вихідному ланцюжку стояла на останньому місці. Якщо у вихідному ланцюжку на останньому місці стоїть буква «Я», то як наступна буква записується буква «А». Ланцюжок, що вийшов, є результатом роботи алгоритму. Наприклад, якщо вихідний ланцюжок символів був «ДІМ», то результатом роботи алгоритму буде ланцюжок «ДОММОДН». Дано ланцюжок символів "КОМ". Скільки букв «О» буде в ланцюжку символів, який виходить, якщо застосувати алгоритм до цього ланцюжка, а потім ще раз застосувати алгоритм до результату його роботи?
1) КОММОКН.
2) КОММОКННКОММОКО.
Відповідь: 5 штук.

16. Знайдіть у мережі Інтернет анімацію кроків алгоритму Ератосфена. За допомогою алгоритму Ератосфена знайдіть усі прості числа, що не перевищують 50.

17. Що буде результатом виконання Черепашкою (див. приклад 5) алгоритму?
Повтори 8 (Направо 45 Вперед 45)
Правильний восьмикутник.

18. Запишіть алгоритм для виконавця Обчислювач (див. приклад 6), що містить трохи більше 5 команд:
А) здобуття з числа 3 числа 16;
Б) отримання у складі 1 числа 25.

19. Система команд виконавця Конструктор складається з двох команд, яким надано номери:
1 – приписати 2
2 – розділити на 2

20. У якій клітині повинен бути виконавець Робот (приклад 7), щоб після виконання алгоритму 3241 у неї ж і повернутися?
Робот повинен бути у клітці У.

7.1. Що таке алгоритм?

Назва "алгоритм" походить від латинської форми імені середньоазіатського математика аль-Хорезмі - Algorithmi. Алгоритм - одне з основних понять інформатики та математики.

7.2. Що таке "Виконавець алгоритму"?

Виконавця характеризують:

    • середа;
    • елементарні дії;
    • система команд;
    • відмови.

Середа(або обстановка) - це "місце проживання" виконавця. Наприклад, для виконавця Робота зі шкільного підручника середовище - це нескінченне клітинне поле. Стіни і зафарбовані клітини теж частина середовища. А їх розташування та положення самого Роботу задають конкретне стан середовища.

Система команд. Кожен виконавець може виконувати команди тільки з деякого строго заданого списку - системи команд виконавця. Для кожної команди мають бути задані умови прийнятності(в яких станах середи може бути виконана команда) та описані результати виконання команди. Наприклад, команда Робота "вверх" може бути виконана, якщо вище Робота немає стіни. Її результат - зміщення Робота на одну клітинку вгору.

Після виклику команди виконавець здійснює відповідне елементарна дія .

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

В інформатиці універсальним виконавцем алгоритмів є комп'ютер.

7.3. Якими властивостями володіють алгоритми?
Основні властивості алгоритмів такі:

Зрозумілістьдля виконавця – тобто. Виконавець алгоритму повинен знати, як його виконувати.

Дискретність(перервність, роздільність) - тобто. Алгоритм повинен представляти процес вирішення задачі як послідовне виконання простих (або раніше визначених) кроків (етапів).

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

Результативність (або кінцівка). Ця властивість полягає в тому, що алгоритм повинен приводити до вирішення задачі за кінцеве число кроків.

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

Алгоритм та його властивості.

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

Виконавець алгоритму- це об'єкт чи суб'єкт, керувати яким складено алгоритм.

Система команд виконавця (СКІ) – це вся сукупність команд, які виконавець вміє виконувати.

Властивості алгоритму: зрозумілість, точність, кінцівка.

Зрозумілість:алгоритм складається лише з команд, що входять до СКІ виконавця.

Точність:кожна команда алгоритму керування визначає однозначну дію виконавця.

Кінцевість (або результативність):виконання алгоритму має призводити до результату кінцевого числа кроків.

Середовище виконавця: обстановка, у якій функціонує виконавець.

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

Повний набір даних:необхідний та достатній набір даних для вирішення поставленої задачі (отримання шуканого результату).

Способи запису алгоритмів.

Найбільшу поширеність набули способи: графічний, словеснийі у вигляді програм для ЕОМ.

Графічний спосібпередбачає використання певних графічних символів – блоків.

Найменування блоку Позначення блоку Зміст
Процес
Обробка інформації
Прийняття рішення
Логічний блок перевірки істинності чи хибності деякої умови
Передача даних
Введення чи виведення інформації
Пуск, зупинка
Початок або кінець програми
Модифікація
Організація циклічного процесу - заголовок циклу

Сукупність блоків утворює так звану блок-схему алгоритму.

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

При записі алгоритмів як програмдля ЕОМ використовуються мови програмування - системи кодування розпоряджень та правила їх використання. Для запису алгоритмів як програм характерна високий рівень формалізації.

Алгоритми роботи із величинами. Основні алгоритмічні структури.

Величина – це окремий інформаційний об'єкт, який має ім'я, значення та тип.

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

Величини бувають постійними та змінними.

Постійна величина (константа)не змінює свого значення під час виконання алгоритму. Константа може позначатись власним значенням (числа 10, 3.5) або символічним ім'ям (число).

Змінна величинаможе змінювати значення під час виконання алгоритму. Змінна завжди позначається символічним ім'ям (X, A, R5 тощо).

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

Вираз- Запис, що визначає послідовність дій над величинами. Вираз може містити константи, змінні, знаки операцій, функції. Приклад:

А+В; 2*X-Y; K + L - sin(Х)

Команда привласнення - команда виконавця, внаслідок якої змінна набуває нового значення. Формат команди:

ім'я змінної>:=вираз>

Виконання команди привласнення відбувається в такому порядку: спочатку обчислюється, потім отримане значення присвоюється змінною.

приклад.Нехай змінна А мала значення 6. Яке значення набуде змінна А після виконання команди: А: = 2 * А - 1?
Рішення.Обчислення виразу 2*А - 1 при А=6 дасть число 11. Значить нове значення змінної А дорівнюватиме 11.

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

Команда введення- команда, за якою значення змінних задаються за допомогою пристроїв введення (наприклад, клавіатури).

Приклад: введенняА – введення значення змінної А з клавіатури комп'ютера.

Команда виведення: команда, за якою значення величини відображається на пристрої виведення комп'ютера (наприклад, монітор).

Приклад: висновок X – значення змінної X виводиться екран.

Команда розгалуження- поділяє алгоритм на два шляхи залежно від певної умови; потім виконання алгоритму виходить загальне продовження. Розгалуження буває повне і неповне. Опис розгалуження в блок-схемах та Алгоритмічною мовою:

Тут під серією розуміється одна чи кілька послідовних команд; кв – кінець розгалуження.

Команда циклузабезпечує повторне виконання послідовності команд (тіла циклу) за деякою умовою.

Цикл із передумовою- цикл, виконання якого повторюється, поки істинна умова циклу:

Цикл із параметром- повторне виконання тіла циклу, поки цілий параметр пробігає безліч всіх значень від початкового (In) до кінцевого (Ik):

приклад.Дано два прості дроби. Скласти алгоритм отримання дробу, що є результатом їхнього поділу.
Рішення.В формі алгебри вирішення завдання виглядає наступним чином:
а/в: з/d = а*d/b*c = m/n
Вихідними даними є чотири цілі величини: а, b, с, d. Результат - два цілих числа m та n.

алгрозподіл дробів
ціла, b, с, d, m, n
поч введенняа, b, с, d
m:=a*d
n:=b*c
висновок "Чисник=", m
висновок "Знаменник=", n
які

Слід звернути увагу, що для виведення тексту (будь-якої символьної послідовності) його слід записати в лапках у команді висновок.

  1. Єфімова О., Морозов Ст, Угрінович Н. Курс комп'ютерної технології з основами інформатики. Навчальний посібник для старших класів. - М: ТОВ "Видавництво АСТ"; АВF, 2000
  2. Задачник-практикум з інформатики. У 2-х томах / Под ред. І.Семакіна, Є.Хеннера. - М: Лабораторія Базових Знань, 2001 р.
  3. Угрінович Н. Інформатика та інформаційні технології. 10-11 клас-М: Лабораторія Базових Знань, АТ "Московські підручники", 2001 р.

Завдання та тести на тему "Алгоритми та виконавці"

  • Управління виконавцем Чортежник - Алгоритми 6 клас

    Уроків: 4 Задань: 9 Тестів: 1

  • 2 Задань: 9 Тестів: 1

Шановний учень!

Знання Теми "Алгоритми та виконавці" необхідно насамперед для подальшого вивчення програмування. Як базу для вивчення програмування обрано мову програмування QBasic. Ми відмовилися від ідеї включити до нашого курсу Visual Basicабо будь-яка інша мова об'єктно-орієнтованого програмування, оскільки такий підхід поки що не отримав широкого застосування у більшості середніх шкіл РФ. Крім того, в основі об'єктно-орієнтованого програмування лежать принципи класичного програмування Dos.

Наш курс розрахований на загальноосвітню програму. Під час підготовки до вступних іспитів з інформаційним технологіяму ВНЗ необхідно ознайомитися зі специфікою вивчення програмування у цьому ВНЗ. У деяких випадках необхідно поглиблене вивчення низки тем, наприклад, таких як "Массиви". На це слід звернути увагу щодо літератури з програмування, можливо, слід скористатися методичними рекомендаціямиз підготовки до іспитів, які нині видаються у більшості вищих навчальних закладів.

У висновку зазначимо, що досягнення "вищого пілотажу" у програмуванні можливе лише за постійної практики та вирішення конкретних прикладних завдань.

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

Алгоритмічні мови

Алгоритми Алгоритмізація.

Поняття алгоритму таке саме основне для інформатики, як і поняття інформації. Саме тому важливо у ньому розібратися.

Назва "алгоритм"походить від латинської форми імені найбільшого середньоазіатського математика Мухаммеда ібн Муса ал-Хорезмі(Alhorithmi), який жив у 783-850 рр. У своїй книзі "Про індійський рахунок" він виклав правила запису натуральних чисел за допомогою арабських цифр і правила дій над ними "стовпчиком", знайомі тепер кожному школяру. У XII столітті ця книга була перекладена латиною і набула широкого поширення в Європі.

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

У математиці на вирішення типових завдань ми використовуємо певні правила, що описують послідовності действий. Наприклад, правила складання дробових чисел, розв'язання квадратних рівнянь і т. д. Зазвичай будь-які інструкції та правила є послідовністю дій, які необхідно виконати в певному порядку. Для розв'язання задачі треба знати, що дано, що слід отримати і які дії та в якому порядку слід для цього виконати. Припис, що визначає порядок виконання дій над даними з метою отримання результатів, і є алгоритм.

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

Це - не визначення в математичному значенні слова, а, швидше, описінтуїтивного поняття алгоритму, що розкриває його суть.

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

Виконавець алгоритму- це деяка абстрактна чи реальна (технічна, біологічна чи біотехнічна) система, здатна виконати дії, що наказуються алгоритмом.

Виконавця характеризують:

  • середа;
  • елементарні дії;
  • система команд;
  • відмови.

Середа(або обстановка) - це "місце проживання" виконавця. Наприклад, для виконавця Робота зі шкільного підручника середовище - це нескінченне клітинне поле. Стіни і зафарбовані клітини теж частина середовища. А їх розташування та положення самого Роботу задають конкретне стан середовища.


Система команд. Кожен виконавець може виконувати команди тільки з деякого строго заданого списку - системи команд виконавця. Для кожної команди мають бути задані умови прийнятності(в яких станах середи може бути виконана команда) та описані результати виконання команди. Наприклад, команда Робота "вверх" може бути виконана, якщо вище Робота немає стіни. Її результат - зміщення Робота на одну клітинку вгору.

Після виклику команди виконавець здійснює відповідне елементарна дія.

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

В інформатиці універсальним виконавцем алгоритмів є комп'ютер.