SlideShare une entreprise Scribd logo
1  sur  17
ЛЕКЦИЯ
Алгоритмы
1. Понятие алгоритма, его свойства
2. Способы записи алгоритмов
3. Примеры
Понятие алгоритма,
его свойства
Алгоритмы
2
3
Определение
Алгоритм – система правил, четко описывающая
последовательность действий, которые
необходимо выполнить для решения задачи, т.е.
для получения результата из исходных данных.
Выходные
данные
(результат)
Исходные
(входные)
данные
Алгоритм
1 действие
2 действие
3 действие
4 действие
5 действие
4
Свойства алгоритмов
Все алгоритмы обладают следующими свойствами:
1. Дискретность.
Алгоритм должен представлять процесс решения задачи
как последовательное выполнение простых шагов.
2. Результативность.
После точного выполнения всех шагов непременно
должен быть получен результат.
ШАГ 1 ШАГ 2 ШАГ 3
Алгоритм
1 действие
2 действие
3 действие
Результат
5
Свойства алгоритмов
3. Массовость.
Алгоритм решения задачи разрабатывается в общем виде,
то есть он должен быть применим для некоторого
класса задач, различающихся лишь исходными
данными.
Алгоритм
1 действие
2 действие
3 действие
4 действие
5 действие ...
ЗАДАЧА 1
ЗАДАЧА 2
ЗАДАЧА 3
КЛАССЗАДАЧ
6
Свойства алгоритмов
4. Конечность.
Каждое действие в отдельности и алгоритм в целом
должны завершаться за конечное число шагов.
ШАГ 1 ШАГ 2 ШАГ 3
ШАГ 1 ШАГ 2 ШАГ ∞
Правильно
Неправильно
7
Свойства алгоритмов
5. Однозначность (детерминированность).
Каждое правило алгоритма должно быть чётким,
однозначным, то есть при одинаковых исходных
данных результат работы должен быть один и тот же.
Правильно Неправильно
Сделай
один шаг
вперед
Сделай
что-нибудь
Способы записи алгоритмов
Алгоритмы
8
9
Способы записи алгоритмов
 Словесный (вербальный) – алгоритм
описывается на естественном языке.
Обычно используется для алгоритмов, ориентированных
на исполнителя-человека.
Исполнитель – объект, который выполняет алгоритм.
Например:
Алгоритм приготовления бутерброда с сыром:
1. Отрезать ломтик хлеба.
2. Намазать отрезанный ломтик хлеба маслом.
3. Отрезать ломтик сыра.
4. Положить отрезанный ломтик сыра на отрезанный
и намазанный маслом ломтик хлеба.
10
Способы записи алгоритмов
 Псевдокод – алгоритм описывается на условном
алгоритмическом языке, включающем как элементы
языка программирования, так и фразы естественного
языка, общепринятые математические обозначения
и др.
Например:
Программа «Здравствуй, Мир!»:
алг ЗДРАВСТВУЙМИР
нач
вывод ('Здравствуй, Мир!‘)
кон алг ЗДРАВСТВУЙМИР
 Программный – алгоритм описывается на
определенном языке программирования строго по
правилам этого языка программирования.
11
Способы записи алгоритмов
 Графический – алгоритм описывается с помощью
блок-схем.
Начало
алгоритма
Действие
Ввод данных
1
да
Ветвление
нет
1
Конец
алгоритма
Вывод данных
Подпрограмма
Используемые
геометрические
фигуры
соответствуют
одному шагу
алгоритма и
имеют
стандартный
смысл.
Порядок выполнения
действий
указывается
стрелками.
Примеры
Алгоритмы
12
Алгоритм на естественном языке:
1. Ввести значения сторон a, b, с.
2. Рассчитать полупериметр по
формуле:
3. Найти площадь треугольника по
формуле Герона:
4. Вывести S.
13
Пример 1 построения алгоритма
Задача 1: По формуле Герона найти площадь треугольника
со сторонами a, b, с.
Начало
Ввод a, b, с
Конец
Вывод S
p:=(a + b + c)/2
   : ( )( )( )S p p a p b p c
 

2
a b c
p
   : ( )( )( )S p p a p b p c
Алгоритм в виде
блок-схем:
14
Пример 2 построения алгоритма
Задача 2: Найти максимальное из двух чисел a и b.
Начало
Ввод a, b
Конец
Вывод max
max:=a max:=b
да нет
a > b
Алгоритм в виде
блок-схем:Алгоритм на естественном
языке:
1. Ввести значения чисел a и b.
2. Проверить а больше b.
3. Если ДА, присвоить
переменной max
значение а.
4. Если НЕТ, присвоить
переменной max
значение b.
5. Вывести переменную max.
15
Пример 3 построения алгоритма
Задача 3: Найти котангенс угла a. Замечание: ctg 0 не
существует.
Начало
Ввод a
Конец
Вывод i
i:= ctg a
да
нет
a > 0
Алгоритм на естественном
языке:
1. Ввести значение a.
2. Проверить а больше 0.
3. Если ДА, найти котангенс а
4. Присвоить переменной i
найденное значение.
5. Вывести значение
переменной i.
6. Осуществить выход из
программы.
7. Если НЕТ, осуществить
выход из программы.
Алгоритм в виде блок-схем:
16
Пример построения циклического
алгоритма (цикл с предусловием)
Задача: Вычислить сумму n чисел (n > 2) a1, a2,…, an.
S:= S + ai
да
i < n
нет
i:= i + 1
Начало
S:= 0, i:=1
Ввод ai
1
1
Конец
Вывод S
Обозначения:
S – искомая сумма;
i – номер числа в
последовательности;
n – количество чисел в
последовательности.
тело
цикла
17
Пример построения циклического
алгоритма (цикл с постусловием)
Задача: Вычислить сумму n чисел (n > 2) a1, a2,…, an.
S:= S + ai
да
i > n
нет
i:= i + 1
Начало
S:= 0, i:=1
Ввод ai
1
1
Конец
Вывод S
Обозначения:
S – искомая сумма;
i – номер числа в
последовательности;
n – количество чисел в
последовательности.
тело
цикла

Contenu connexe

Tendances

алг и прогр (11кл)
алг и прогр (11кл)алг и прогр (11кл)
алг и прогр (11кл)
isva69
 
19 pascal urok_3
19 pascal urok_319 pascal urok_3
19 pascal urok_3
Ann Eres
 
Функции, 11-й клаас
Функции, 11-й клаасФункции, 11-й клаас
Функции, 11-й клаас
Albina
 
Презентация "Алгоритмы"
Презентация "Алгоритмы"Презентация "Алгоритмы"
Презентация "Алгоритмы"
Johnny_Lean
 
программирование на Maple. Лекция 2
программирование на Maple. Лекция 2программирование на Maple. Лекция 2
программирование на Maple. Лекция 2
Andrei V, Zhuravlev
 
копия 6 шагов основа группам муравьишки
копия 6 шагов основа группам муравьишкикопия 6 шагов основа группам муравьишки
копия 6 шагов основа группам муравьишки
Вячеслав Башкиров
 
программирование на Maple. Лекция 1
программирование на Maple. Лекция 1программирование на Maple. Лекция 1
программирование на Maple. Лекция 1
Andrei V, Zhuravlev
 

Tendances (18)

Лекция 11 Приближенные алгоритмы
Лекция 11 Приближенные алгоритмыЛекция 11 Приближенные алгоритмы
Лекция 11 Приближенные алгоритмы
 
основы алгоритмизации
основы алгоритмизацииосновы алгоритмизации
основы алгоритмизации
 
алг и прогр (11кл)
алг и прогр (11кл)алг и прогр (11кл)
алг и прогр (11кл)
 
Конструирование алгоритмов
Конструирование алгоритмовКонструирование алгоритмов
Конструирование алгоритмов
 
Урок математики в 10 классе "Исследование функций с помощью производной"
Урок математики в 10 классе "Исследование функций с помощью производной"Урок математики в 10 классе "Исследование функций с помощью производной"
Урок математики в 10 классе "Исследование функций с помощью производной"
 
4 algoritm
4 algoritm4 algoritm
4 algoritm
 
19 pascal urok_3
19 pascal urok_319 pascal urok_3
19 pascal urok_3
 
Функции, 11-й клаас
Функции, 11-й клаасФункции, 11-й клаас
Функции, 11-й клаас
 
Презентация "Алгоритмы"
Презентация "Алгоритмы"Презентация "Алгоритмы"
Презентация "Алгоритмы"
 
Лекция 8 Динамическое программирование
Лекция 8 Динамическое программированиеЛекция 8 Динамическое программирование
Лекция 8 Динамическое программирование
 
Программирование как этап решения задач на компьютере
Программирование как этап решения задач на компьютереПрограммирование как этап решения задач на компьютере
Программирование как этап решения задач на компьютере
 
Лекция 1 Скорость роста функций
Лекция 1 Скорость роста функцийЛекция 1 Скорость роста функций
Лекция 1 Скорость роста функций
 
777
777777
777
 
программирование на Maple. Лекция 2
программирование на Maple. Лекция 2программирование на Maple. Лекция 2
программирование на Maple. Лекция 2
 
Pri3
Pri3Pri3
Pri3
 
копия 6 шагов основа группам муравьишки
копия 6 шагов основа группам муравьишкикопия 6 шагов основа группам муравьишки
копия 6 шагов основа группам муравьишки
 
программирование на Maple. Лекция 1
программирование на Maple. Лекция 1программирование на Maple. Лекция 1
программирование на Maple. Лекция 1
 
Logarifmicheskaya funkciya
Logarifmicheskaya funkciyaLogarifmicheskaya funkciya
Logarifmicheskaya funkciya
 

En vedette

How Retail Response can Benefit your store
How Retail Response can Benefit your storeHow Retail Response can Benefit your store
How Retail Response can Benefit your store
Tim Ellis
 

En vedette (15)

How Retail Response can Benefit your store
How Retail Response can Benefit your storeHow Retail Response can Benefit your store
How Retail Response can Benefit your store
 
Prezentace k začátku revize regulačního rámce
Prezentace k začátku revize regulačního rámcePrezentace k začátku revize regulačního rámce
Prezentace k začátku revize regulačního rámce
 
degree certificate
degree certificatedegree certificate
degree certificate
 
Implementace směrnice BBcost v ČR
Implementace směrnice BBcost v ČRImplementace směrnice BBcost v ČR
Implementace směrnice BBcost v ČR
 
io t 聯網商務新創團隊實務分享_olis innovation
io t 聯網商務新創團隊實務分享_olis innovationio t 聯網商務新創團隊實務分享_olis innovation
io t 聯網商務新創團隊實務分享_olis innovation
 
Progressivism
ProgressivismProgressivism
Progressivism
 
#HelloMyNameIs - Dr Stuart Berry
#HelloMyNameIs - Dr Stuart Berry#HelloMyNameIs - Dr Stuart Berry
#HelloMyNameIs - Dr Stuart Berry
 
How to Attract Traffic and Leads Using Instagram at Affiliate Summit East
How to Attract Traffic and Leads Using Instagram at Affiliate Summit EastHow to Attract Traffic and Leads Using Instagram at Affiliate Summit East
How to Attract Traffic and Leads Using Instagram at Affiliate Summit East
 
Human resource management
Human resource managementHuman resource management
Human resource management
 
Cloud Computing Improving Organizational Agility
Cloud Computing Improving Organizational AgilityCloud Computing Improving Organizational Agility
Cloud Computing Improving Organizational Agility
 
SVN Platinum Package
SVN Platinum PackageSVN Platinum Package
SVN Platinum Package
 
SAR scoring
SAR scoring SAR scoring
SAR scoring
 
Actividad de un medio audiovisual
Actividad de un medio audiovisualActividad de un medio audiovisual
Actividad de un medio audiovisual
 
EarthingSport, Global sport and Environmental Outreach Brochure
EarthingSport, Global sport and Environmental Outreach BrochureEarthingSport, Global sport and Environmental Outreach Brochure
EarthingSport, Global sport and Environmental Outreach Brochure
 
Presentacion hogar moda inicial
Presentacion hogar moda inicialPresentacion hogar moda inicial
Presentacion hogar moda inicial
 

Similaire à Algorithm

чернякова г.в.
чернякова г.в.чернякова г.в.
чернякова г.в.
sharikdp
 
практика 12
практика 12практика 12
практика 12
student_kai
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1
igorm9so
 
практика 5
практика 5практика 5
практика 5
student_kai
 
Анастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестовАнастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестов
Yandex
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
Gala Timofeeva
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013
AliyaAringazinova
 
Презентация2
Презентация2Презентация2
Презентация2
larionova
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
Gala Timofeeva
 

Similaire à Algorithm (20)

чернякова г.в.
чернякова г.в.чернякова г.в.
чернякова г.в.
 
Алгоритм
АлгоритмАлгоритм
Алгоритм
 
практика 12
практика 12практика 12
практика 12
 
лекция 8
лекция 8лекция 8
лекция 8
 
JS Fest 2019/Autumn. Adam Leos. So why do you need to know Algorithms and Dat...
JS Fest 2019/Autumn. Adam Leos. So why do you need to know Algorithms and Dat...JS Fest 2019/Autumn. Adam Leos. So why do you need to know Algorithms and Dat...
JS Fest 2019/Autumn. Adam Leos. So why do you need to know Algorithms and Dat...
 
Методы оценивания
Методы оцениванияМетоды оценивания
Методы оценивания
 
Logarifmicheskie uravneniya
Logarifmicheskie uravneniyaLogarifmicheskie uravneniya
Logarifmicheskie uravneniya
 
Алгоритмизация
АлгоритмизацияАлгоритмизация
Алгоритмизация
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1
 
пр 15.docx
пр 15.docxпр 15.docx
пр 15.docx
 
прак 15.docx
прак 15.docxпрак 15.docx
прак 15.docx
 
практика 5
практика 5практика 5
практика 5
 
Алгоритмы
АлгоритмыАлгоритмы
Алгоритмы
 
Анастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестовАнастасия Бордонос - Проектирование тестов
Анастасия Бордонос - Проектирование тестов
 
85004
8500485004
85004
 
Запись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка ПаскальЗапись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка Паскаль
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013
 
Презентация2
Презентация2Презентация2
Презентация2
 
алгоритмы конспект урока игры
алгоритмы конспект урока игрыалгоритмы конспект урока игры
алгоритмы конспект урока игры
 

Algorithm

  • 1. ЛЕКЦИЯ Алгоритмы 1. Понятие алгоритма, его свойства 2. Способы записи алгоритмов 3. Примеры
  • 3. 3 Определение Алгоритм – система правил, четко описывающая последовательность действий, которые необходимо выполнить для решения задачи, т.е. для получения результата из исходных данных. Выходные данные (результат) Исходные (входные) данные Алгоритм 1 действие 2 действие 3 действие 4 действие 5 действие
  • 4. 4 Свойства алгоритмов Все алгоритмы обладают следующими свойствами: 1. Дискретность. Алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов. 2. Результативность. После точного выполнения всех шагов непременно должен быть получен результат. ШАГ 1 ШАГ 2 ШАГ 3 Алгоритм 1 действие 2 действие 3 действие Результат
  • 5. 5 Свойства алгоритмов 3. Массовость. Алгоритм решения задачи разрабатывается в общем виде, то есть он должен быть применим для некоторого класса задач, различающихся лишь исходными данными. Алгоритм 1 действие 2 действие 3 действие 4 действие 5 действие ... ЗАДАЧА 1 ЗАДАЧА 2 ЗАДАЧА 3 КЛАССЗАДАЧ
  • 6. 6 Свойства алгоритмов 4. Конечность. Каждое действие в отдельности и алгоритм в целом должны завершаться за конечное число шагов. ШАГ 1 ШАГ 2 ШАГ 3 ШАГ 1 ШАГ 2 ШАГ ∞ Правильно Неправильно
  • 7. 7 Свойства алгоритмов 5. Однозначность (детерминированность). Каждое правило алгоритма должно быть чётким, однозначным, то есть при одинаковых исходных данных результат работы должен быть один и тот же. Правильно Неправильно Сделай один шаг вперед Сделай что-нибудь
  • 9. 9 Способы записи алгоритмов  Словесный (вербальный) – алгоритм описывается на естественном языке. Обычно используется для алгоритмов, ориентированных на исполнителя-человека. Исполнитель – объект, который выполняет алгоритм. Например: Алгоритм приготовления бутерброда с сыром: 1. Отрезать ломтик хлеба. 2. Намазать отрезанный ломтик хлеба маслом. 3. Отрезать ломтик сыра. 4. Положить отрезанный ломтик сыра на отрезанный и намазанный маслом ломтик хлеба.
  • 10. 10 Способы записи алгоритмов  Псевдокод – алгоритм описывается на условном алгоритмическом языке, включающем как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др. Например: Программа «Здравствуй, Мир!»: алг ЗДРАВСТВУЙМИР нач вывод ('Здравствуй, Мир!‘) кон алг ЗДРАВСТВУЙМИР  Программный – алгоритм описывается на определенном языке программирования строго по правилам этого языка программирования.
  • 11. 11 Способы записи алгоритмов  Графический – алгоритм описывается с помощью блок-схем. Начало алгоритма Действие Ввод данных 1 да Ветвление нет 1 Конец алгоритма Вывод данных Подпрограмма Используемые геометрические фигуры соответствуют одному шагу алгоритма и имеют стандартный смысл. Порядок выполнения действий указывается стрелками.
  • 13. Алгоритм на естественном языке: 1. Ввести значения сторон a, b, с. 2. Рассчитать полупериметр по формуле: 3. Найти площадь треугольника по формуле Герона: 4. Вывести S. 13 Пример 1 построения алгоритма Задача 1: По формуле Герона найти площадь треугольника со сторонами a, b, с. Начало Ввод a, b, с Конец Вывод S p:=(a + b + c)/2    : ( )( )( )S p p a p b p c    2 a b c p    : ( )( )( )S p p a p b p c Алгоритм в виде блок-схем:
  • 14. 14 Пример 2 построения алгоритма Задача 2: Найти максимальное из двух чисел a и b. Начало Ввод a, b Конец Вывод max max:=a max:=b да нет a > b Алгоритм в виде блок-схем:Алгоритм на естественном языке: 1. Ввести значения чисел a и b. 2. Проверить а больше b. 3. Если ДА, присвоить переменной max значение а. 4. Если НЕТ, присвоить переменной max значение b. 5. Вывести переменную max.
  • 15. 15 Пример 3 построения алгоритма Задача 3: Найти котангенс угла a. Замечание: ctg 0 не существует. Начало Ввод a Конец Вывод i i:= ctg a да нет a > 0 Алгоритм на естественном языке: 1. Ввести значение a. 2. Проверить а больше 0. 3. Если ДА, найти котангенс а 4. Присвоить переменной i найденное значение. 5. Вывести значение переменной i. 6. Осуществить выход из программы. 7. Если НЕТ, осуществить выход из программы. Алгоритм в виде блок-схем:
  • 16. 16 Пример построения циклического алгоритма (цикл с предусловием) Задача: Вычислить сумму n чисел (n > 2) a1, a2,…, an. S:= S + ai да i < n нет i:= i + 1 Начало S:= 0, i:=1 Ввод ai 1 1 Конец Вывод S Обозначения: S – искомая сумма; i – номер числа в последовательности; n – количество чисел в последовательности. тело цикла
  • 17. 17 Пример построения циклического алгоритма (цикл с постусловием) Задача: Вычислить сумму n чисел (n > 2) a1, a2,…, an. S:= S + ai да i > n нет i:= i + 1 Начало S:= 0, i:=1 Ввод ai 1 1 Конец Вывод S Обозначения: S – искомая сумма; i – номер числа в последовательности; n – количество чисел в последовательности. тело цикла