Лекція 1_2021

Содержание

Слайд 2

План лекції

Історія поняття «алгоритм»
Визначення поняття «алгоритм»
Властивості алгоритмів
Форми представлення алгоритмів
Специфікація алгоритму

План лекції Історія поняття «алгоритм» Визначення поняття «алгоритм» Властивості алгоритмів Форми представлення алгоритмів Специфікація алгоритму

Слайд 3

Історія поняття «алгоритм»

Теорія алгоритмів як окремий розділ математики, що вивчає загальні властивості

Історія поняття «алгоритм» Теорія алгоритмів як окремий розділ математики, що вивчає загальні
алгоритмів, виникла в 30-х роках ХХ століття.
Поняття алгоритму відноситься до первинних понять математики і служить концептуальною основою процесів обробки інформації. Загальні властивості алгоритмів вивчає розділ математики, яка називається теорією алгоритмів.
Сучасне формальне визначення алгоритму було дано в 30-50-і роки XX ст. в роботах Тьюринга, Поста, Чорча, Вінера, Маркова.
Слово «алгоритм» походить від імені великого середньоазіатського вченого Мухаммеда аль-Хорезмі, який жив у першій половині IX століття, який вперше дав опис придуманої в Індії позиційної десяткової системи числення.

Слайд 4

Визначення поняття «алгоритм»

Визначення 1. (А.А. Колмогоров): Алгоритм – це будь-яка система обчислень,

Визначення поняття «алгоритм» Визначення 1. (А.А. Колмогоров): Алгоритм – це будь-яка система
виконуваних за суворо визначеними правилами, яка після якого-небудь числа кроків свідомо призводить до вирішення поставленого завдання.
Визначення 2. (А.А. Марков). Алгоритм – це точне розпорядження, що визначає обчислювальний процес, що йде від варійованих вихідних даних до шуканого результату.
Визначення 3. (Д. Е. Кнут). Алгоритм – це кінцевий набір правил, який визначає послідовність операцій для вирішення конкретної множини завдань і володіє п'ятьма важливими рисами: скінченність, визначеність, введення, вивід, ефективність.
Визначення 4. (Філософський словник) Алгоритм – точне розпорядження про виконання в певному порядку деякої системи операцій, що ведуть до розв'язання всіх задач даного типу.

Слайд 5

Визначення поняття «алгоритм»

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

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

Застосовний алгоритм

Множина вхідних даних

Множина вихідних даних

Область застосування

Алгоритмічно обчислювана функція

Слайд 6

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

скінченність дій (фінітність) – алгоритм повинен виконувати кінцеву кількість кроків при

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

Слайд 7

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

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

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

Слайд 8

Специфікація алгоритму

Постановка задачі
Призначення алгоритму
Умови тощо
Дані
Початкові
Проміжні
Вихідні
Вхідна / вихідна форма
Обмеження
Характеристики алгоритму.
Метод
Тестові

Специфікація алгоритму Постановка задачі Призначення алгоритму Умови тощо Дані Початкові Проміжні Вихідні
приклади

Початкові дані:
Перелік початкових даних;
Типи та формати даних;
Обмеження;
Спосіб введення.
Вихідні дані:
Перелік вихідних даних;
Типи та формати даних;
Обмеження;

Слайд 9

Таблиця даних / тестування

Таблиця тестування

Таблиця даних

Клас даних
Початкові
Проміжні
Вихідні

Структура
Проста змінна
Масив
Запис

Тип визначає
Значення
Розмір

Таблиця даних / тестування Таблиця тестування Таблиця даних Клас даних Початкові Проміжні

Допустимі операції

Слайд 10

Форми представлення алгоритмів

Словесний (запис природною мовою)
опис послідовних етапів обробки даних природною

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

Слайд 11

Блок-схема

Блок-схема

Слайд 12

Блок-схема

Блок-схема

Слайд 13

Псевдокод

Псевдокод – компактна, напівформальна мова опису алгоритмів, що використовує ключові слова

Псевдокод Псевдокод – компактна, напівформальна мова опису алгоритмів, що використовує ключові слова
імперативних мов програмування, але опускає несуттєві для розуміння алгоритму подробиці і специфічний синтаксис.
Призначений для подання алгоритму людині, а не для комп'ютерної трансляції та подальшого виконання програми.
Головна мета – забезпечити розуміння алгоритму людиною, зробити опис більш прийнятним, ніж мовою програмування.
https://techrocks.ru/2020/03/27/how-to-write-pseudocode/

Слайд 14

Псевдокод

Псевдокод

Слайд 15

Псевдокод

Псевдокод

Слайд 16

Псевдокод

Псевдокод
Имя файла: Лекція-1_2021.pptx
Количество просмотров: 35
Количество скачиваний: 0