Меню
безкоштовно
Головна  /  навігатори / Алгоритмом є послідовність команд. Типи алгоритмів - Гіпермаркет знань

Алгоритмом є послідовність команд. Типи алгоритмів - Гіпермаркет знань

Об'єкт, який буде виконувати алгоритм, зазвичай називають виконавцем.

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

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

Комп'ютер - автоматичний виконавець алгоритмів.

Алгоритм, записаний на «зрозумілою» комп'ютера мовою програмування, називається програмою.

Кожен виконавець характеризується середовищем ( «Місцем проживання») і системою команд.

Основними характеристиками виконавця є: середа, система команд, елементарні дії, відмови.

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

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

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

відмови виконавця виникають при виклику команди в неприпустимому для даної команди стані середовища. Іншими словами - це випадок, коли спроба виконати команду призводить до аварії.

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

Є багато різних навчальних виконавців, Придуманих для занять з інформатики. У них різні, часто кумедні назви: Черепашка, Робот, Чертежник, Кенгуренок, пилесосик, Мураха, Кукарача і ін. Одні виконавці створюють малюнки на екрані, інші складають слова з кубиків з буквами, треті перетягують предмети з одного місця в інше. Всі ці виконавці керуються програмним шляхом. Будь-кому з них властива певне середовище діяльності, система команд управління, режими роботи. За допомогою кожного з таких виконавців можна вчитися будувати алгоритми управління.

Основні види алгоритмів (алгоритмічних структур):

1. Лінійний алгоритм (ще називають проходження);

2. Циклічний алгоритм;

3. Розгалужуються алгоритм;

МБОУ «Глиннівської ЗОШ»

Новооскольського району

Бєлгородської області

План - конспект уроку

(9 клас)

«Алгоритми, поняття алгоритму, властивості алгоритму. Виконавці алгоритму »

підготувала:

Учітедь інформатика

Тарасова Н.Г.

2011

Тема: Поняття алгоритмів, властивості алгоритму. Виконавці алгоритмів, система команд виконавця. Способи записів алгоритмів. Формальне виконання алгоритмів.

Тип уроку: ознайомлення з новим матеріалом.

цілі:

  1. Сприяти розвитку алгоритмічного мислення;
  2. Дати поняття алгоритму, розповісти про властивості, дати класифікацію алгоритмів;
  3. Ознайомити з формою запису алгоритмів - блок-схема.

устаткування: проектор, презентація.

Хід уроку

1 орг. момент

Привітання, посадка, перекличка.

2 Актуалізація опорного матеріалу

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

3 Виклад матеріалу

Походження терміна «алгоритм» пов'язане з математикою. Історія його виникнення така. У IX столітті в Багдаді жив вчений ал (аль) -Хорезмі (повне ім'я - Мухаммед бен Муса ал-Хорезмі, тобто Мухаммед син Муси з Хорезму), математик, астроном, географ. В одному зі своїх праць він описав десяткову систему числення і вперше сформульований правила виконання арифметичних дії над цілими числами і звичайними дробами. Арабська оригінал цієї книги був загублений, але залишився латинський переклад XII в., За яким Західна Європа ознайомилася з десятковою системою числення і правилами виконання арифметичних дій.

Ал-Хорезмі прагнув до того, щоб сформульовані їм правила були зрозумілими. Досягти цього в IX ст., Коли ще не була розроблена математична символіка (знаки операцій, дужки, буквені позначення і т.д.), було важко. Однак йому вдаюся виробити чіткий стиль суворого словесного приписи, який не давав читачеві можливість ухилитися від запропонованого або пропустити якісь дії.

Правила в книгах см-Хорезмі в латинському перекладі починалися словами «Алгорізмі сказав». В інших латинських перекладах автор іменувався як Алгорітмус. Згодом було забуто, що Алгорізмі (Алгорітмус) - це автор правил, і ці правила стали називати алгоритмами. Багато століть розроблялися алгоритми для вирішення все нових і нових класів задач, але саме поняття алгоритму не мало точного математичного визначення.

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

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

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

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

технічний виконавець - банкомат;

біологічний - людина, живий організм;

Біотехніка - штучний інтелект.

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

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

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

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

Завдяки цій властивості виконання алгоритму носить механічний характер і не вимагає додаткових вказівок.

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

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

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

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

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

Форми запису алгоритмів:

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

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

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

Графічні форми запису алгоритмів:

Основні алгоритмічні структури

Дотримання (лінійний алгоритм) Цикли

розгалуження

дотримання - команди виконуються одна за одною в тому порядку, в якому вони записані в алгоритмі. ((Приклад. Алгоритм відкриття дверей в квартиру: дістати ключ, вставити взамкову щілину, повернути потрібну кількість разів, дістати ключ, відкрити двері.закрити двері)

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

Цикл (повторення) - в процесі виконання алгоритму багаторазово повторюється певнийнабір команд. (Приклад.(Миття 10 тарілок: взяти тарілку, помити, поставити в сушку, взятитарілку, помити, поставити в сушку і т. д. поки не закінчаться тарілки.)

4 Застосування отриманих знань

завдання виконати команди алгоритму при а \u003d 1, b \u003d 2, c \u003d 3

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ім'я змінної\u003e: \u003d вираз\u003e

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

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

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

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

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

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

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

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

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

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

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

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

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

алг ділення дробів
цілий а, b, с, d, m, n
нач введення а, b, с, d
m: \u003d a * d
n: \u003d b * c
висновок "Чисельник \u003d", m
висновок "Знаменатель \u003d", n
вряди

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

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

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

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

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

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

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

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

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

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

Поняття алгоритму. Виконавці алгоритмів. властивості алгоритмів

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

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

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

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

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

Для створення алгоритму (програми) необхідно знати:

    повний набір вихідних даних завдання (початковий стан об'єкта);

    мета створення алгоритму (кінцевий стан об'єкта);

    систему команд виконавця (тобто набір команд, які виконавець розуміє і може виконати).

Отриманий алгоритм (програма) повинен володіти наступним набором властивостей:

    дискретність (Алгоритм розбитий на окремі кроки - команди);

    однозначність (Кожна команда визначає єдино потенційний вплив виконавця);

    зрозумілість (Всі команди алгоритму входять в систему команд виконавця);

    результативність (Виконавець повинен вирішити задачу за кінцеве число кроків).

Велика частина алгоритмів володіє також властивістю масовості (За допомогою одного і того ж алгоритму можна вирішувати безліч однотипних завдань).

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

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

позначення

опис

Примітки

Початок і кінець алгоритму

Введення і виведення даних.

Висновок даних іноді позначають інакше:

Дія

В обчислювальних алгоритмах так позначають присвоювання

розвилка

Розвилка - компонент, необхідний для реалізації розгалужень і циклів

Початок циклу з параметром

Типовий процес

У програмуванні - процедури або підпрограми

Переходи між блоками

Наведемо приклад опису алгоритму підсумовування двох величин у вигляді блок-схеми:

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

Типові алгоритмічні структури

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

Лінійна структура (слідування)

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

розгалуження

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

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

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

Цикл (повторення)

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

цикли« до»- повторення тіла циклу до виконання умови:

цикли « бувай»- повторення тіла циклу поки умова виконується (Істинно):

Цикли з лічильником(З параметром) - повторення тіла циклу заданий число раз:

Допоміжний алгоритм (підпрограма, процедура)

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

Методи розробки складних алгоритмів

Існує два методи розробки складних алгоритмів:

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

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

Алгоритми і процеси управління

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

У найпростішому випадку таких об'єктів два:

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

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

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

На початок теми