SlideShare a Scribd company logo
1 of 16
СПОСОБЫ ЗАПИСИ АЛГОРИТМОВ
ОСНОВЫ АЛГОРИТМИЗАЦИИ
Ключевые слова
• словесное описание
• построчная запись
• блок-схема
• школьный алгоритмический язык
Марков А.А. (1903—1979) установил, что
алгоритмы должны содержать предписания
двух видов:
1) функциональные операторы - предписания,
направленные на непосредственное преобразование
информации;
2) логические операторы - предписания,
определяющие дальнейшее направление действий.
Именно эти операторы положены в основу большинства
способов записи алгоритмов.
Основные способы записи
алгоритма
Основные способы записи
алгоритма
СловесныеСловесные ГрафическиеГрафические На алгоритмических
языках
На алгоритмических
языках
Словесное
описание
Построчная
запись
Последователь-
ность рисунков
Структурограмма
Школьный
алгоритмический
язык
Язык
программирова-
ния
Блок-схема
Словесное описание
Словесное описание - самая простая запись алгоритма в
виде набора высказываний на обычном разговорном языке.
Пример. Словесное описание алгоритма
нахождения наибольшего общего делителя
(НОД) пары целых чисел (алгоритм
Евклида).
Чтобы найти НОД двух чисел, составьте
таблицу из двух столбцов и назовите
столбцы X и Y. Запишите первое из
заданных чисел в столбец Х, а второе - в
столбец Y. Если данные числа не равны,
замените большее из них на результат
вычитания из большего числа меньшего.
Повторяйте такие замены до тех пор,
пока числа не окажутся равными, после чего
число из столбца Х считайте искомым
результатом.
Построчная запись
Кроме слов естественного языка предписания могут
содержать математические выражения и формулы.
Каждое предписание записывается с новой строки
Правила построчной записи алгоритмаПравила построчной записи алгоритма
Предписание (шаги) алгоритма нумеруются
Исполнение алгоритма происходит в порядке
возрастания номеров шагов, начиная с первого,
если нет особых указаний
Построчная запись алгоритма Евклида
Построчная запись алгоритма Евклида
1. Начало.
2. Обозначить первое из заданных чисел Х, второе - Y.
3. Если Х = Y то перейти к п. 9.
4. Если X >Y , то перейти к п. 5, иначе перейти к п. 7.
5. Заменить X на X-Y.
6. Перейти к п. 3.
7. Заменить Y на Y-X
8. Перейти к п. 3.
9. Считать Х искомым результатом.
10. Конец.
Графические способы
Последовательные картинки
Структурограмма
Блок-схемы
В блок-схеме предписания изображаются с помощью
различных геометрических фигур, а последовательность
выполнения шагов указывается с помощью линий.
Блок начала или конца алгоритма
Блок ввода или вывода данных
Блок обработки данных
Блок проверки условия
Блок пояснительных записей
Ввод значений X и Y
Проверка равенства X и Y
Определение большего
из X и Y
Уменьшение большего числа
на величину меньшего
Определение НОД
Вывод НОД
Да Нет
Начало
X<Y
Конец
X,Y
X=Y
НОД:=Х
НОД
Y:=Y-X X:=X-Y
Да Нет
Запись алгоритма Евклида с помощью блок-схемы
Алгоритмические языки
Алгоритмические языки - формальные языки,
предназначенные для записи алгоритмов.
Характеристики алгоритмического языкаХарактеристики алгоритмического языка
Набор используемых символов
Система правил образования
конструкций языка
Система правил, определяющих
смысл и способ употребления
конструкций языка
СинтаксисСинтаксис
СемантикаСемантика
АлфавитАлфавит
Общий вид программы на школьном алгоритмическом языке:
алг <название алгоритма>
нач
<последовательность команд>
кон
алг переливания
нач
наполнить сосуд ёмкостью 8 л из сосуда ёмкостью 12 л
наполнить сосуд ёмкостью 5 л из сосуда ёмкостью 8 л
вылить всё из сосуда ёмкостью 5 л в сосуд ёмкостью 12 л
вылить всё из сосуда ёмкостью 8 л в сосуд ёмкостью 5 л
наполнить сосуд ёмкостью 8 л из сосуда ёмкостью 12 л
долить из сосуда ёмкостью 8 л сосуд ёмкостью 5 л
вылить всё из сосуда ёмкостью 5 л в сосуд ёмкостью 12 л
кон
Алгоритм для исполнителя Водолей
Самое главное
Существуют различные способы записи алгоритмов:
• словесное описание
• построчная запись
• блок-схема
• школьный алгоритмический язык и другие.
Каждый из этих способов обладает своими
достоинствами и недостатками.
Вопросы и задания
Каковы основные способы записи алгоритмов?Чем вызвано существование многих способов записи
алгоритмов?
Дайте словесное описание алгоритма сложения двух
обыкновенных дробей a/b и c/d.
Представьте в виде построчной записи алгоритм
решения следующей задачи:
«Имеются четыре арбуза различной массы. Как,
пользуясь чашечными весами без гирь, путём не более
пяти взвешиваний расположить их по возрастанию
веса?».
Представьте с помощью блок-схемы алгоритм
решения следующей задачи:
«Из трёх монет одинакового достоинства одна
фальшивая (более лёгкая). Как её найти с помощью
одного взвешивания на чашечных весах без гирь?».
Запишите на алгоритмическом языке алгоритм
построения окружности заданного радиуса r,
проходящей через заданные точки А и В.
Алгоритмический
язык
Алгоритмический
язык
Опорный конспект
СловесныйСловесный Блок-схемаБлок-схема
Способы записи алгоритмовСпособы записи алгоритмов
Обычный
разговорный
язык
Геометрические
фигуры
Слова имеют
заданный смысл и
способ записи

More Related Content

What's hot

19 pascal urok_3
19 pascal urok_319 pascal urok_3
19 pascal urok_3Ann Eres
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программированияirina8682
 
Конструирование алгоритмов
Конструирование алгоритмовКонструирование алгоритмов
Конструирование алгоритмовAndrey Dolinin
 
программирование на Maple. Лекция 1
программирование на Maple. Лекция 1программирование на Maple. Лекция 1
программирование на Maple. Лекция 1Andrei V, Zhuravlev
 
Основы программирования на ruby
Основы программирования на rubyОсновы программирования на ruby
Основы программирования на rubyEvgeny Smirnov
 
тема 1.введение в pascal
тема 1.введение в pascalтема 1.введение в pascal
тема 1.введение в pascaldasha2012
 
программирование на Maple. Лекция 2
программирование на Maple. Лекция 2программирование на Maple. Лекция 2
программирование на Maple. Лекция 2Andrei V, Zhuravlev
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1igorm9so
 
этапы написания программы
этапы написания программыэтапы написания программы
этапы написания программыИрина Чернова
 
лабораторная работа №2
лабораторная работа №2лабораторная работа №2
лабораторная работа №2Zhanna Kazakova
 
Управляющие структуры в Ruby: условия
Управляющие структуры в Ruby: условияУправляющие структуры в Ruby: условия
Управляющие структуры в Ruby: условияEvgeny Smirnov
 

What's hot (20)

8 3-3
8 3-38 3-3
8 3-3
 
19 pascal urok_3
19 pascal urok_319 pascal urok_3
19 pascal urok_3
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программирования
 
Тодуа. Методы разработки интерпретатора языка Рефал-2
Тодуа. Методы разработки интерпретатора языка Рефал-2Тодуа. Методы разработки интерпретатора языка Рефал-2
Тодуа. Методы разработки интерпретатора языка Рефал-2
 
Ruby строки
Ruby строкиRuby строки
Ruby строки
 
Конструирование алгоритмов
Конструирование алгоритмовКонструирование алгоритмов
Конструирование алгоритмов
 
8 3-5
8 3-58 3-5
8 3-5
 
программирование на Maple. Лекция 1
программирование на Maple. Лекция 1программирование на Maple. Лекция 1
программирование на Maple. Лекция 1
 
777
777777
777
 
8 3-4
8 3-48 3-4
8 3-4
 
функции
функциифункции
функции
 
Основы программирования на ruby
Основы программирования на rubyОсновы программирования на ruby
Основы программирования на ruby
 
тема 1.введение в pascal
тема 1.введение в pascalтема 1.введение в pascal
тема 1.введение в pascal
 
программирование на Maple. Лекция 2
программирование на Maple. Лекция 2программирование на Maple. Лекция 2
программирование на Maple. Лекция 2
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1
 
этапы написания программы
этапы написания программыэтапы написания программы
этапы написания программы
 
лабораторная работа №2
лабораторная работа №2лабораторная работа №2
лабораторная работа №2
 
Управляющие структуры в Ruby: условия
Управляющие структуры в Ruby: условияУправляющие структуры в Ruby: условия
Управляющие структуры в Ruby: условия
 
Prog
ProgProg
Prog
 
Step cpp0201
Step cpp0201Step cpp0201
Step cpp0201
 

Similar to Способы записи алгоритмов

10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскальAnna_Malina
 
Функции в языке программирования QBasic
Функции в языке программирования QBasicФункции в языке программирования QBasic
Функции в языке программирования QBasickvlar
 
эволюция языков программирования
эволюция языков программированияэволюция языков программирования
эволюция языков программированияAndrey Radionov
 
13 алгоритмизация, программирование, инструментальное по
13 алгоритмизация, программирование, инструментальное по13 алгоритмизация, программирование, инструментальное по
13 алгоритмизация, программирование, инструментальное поSergey Lomakin
 
гибридная технология перевода. юлия епифанцева. зал.4
гибридная технология перевода. юлия епифанцева. зал.4гибридная технология перевода. юлия епифанцева. зал.4
гибридная технология перевода. юлия епифанцева. зал.4rit2011
 
Презентация PROMT для РИТ
Презентация PROMT для РИТПрезентация PROMT для РИТ
Презентация PROMT для РИТQPsoft
 
Ada in education-09-oct06
Ada in education-09-oct06Ada in education-09-oct06
Ada in education-09-oct06Pavel Zhukov
 
Введение в Clojure (Margincon 2010)
Введение в Clojure (Margincon 2010)Введение в Clojure (Margincon 2010)
Введение в Clojure (Margincon 2010)Alex Ott
 
17.03 большакова
17.03 большакова17.03 большакова
17.03 большаковаNatalia Ostapuk
 
Эмин Р. "Языки Программирования"
Эмин Р. "Языки Программирования"Эмин Р. "Языки Программирования"
Эмин Р. "Языки Программирования"Emin Rahmanov
 
Некоторые трудности при обучении программированию: что нельзя обойти и умолч...
Некоторые трудности при обучении программированию:что нельзя обойти и умолч...Некоторые трудности при обучении программированию:что нельзя обойти и умолч...
Некоторые трудности при обучении программированию: что нельзя обойти и умолч...Alexey Neznanov
 
Programming history. Algorithm
Programming history. AlgorithmProgramming history. Algorithm
Programming history. AlgorithmIhor Porotikov
 
лекция1
лекция1лекция1
лекция1shagore
 
АОТ - Предсинтаксис
АОТ - ПредсинтаксисАОТ - Предсинтаксис
АОТ - Предсинтаксисeibolshakova
 
Ayan9r1 po(1)
Ayan9r1 po(1)Ayan9r1 po(1)
Ayan9r1 po(1)Ayan_R
 
Системы автоматического синтеза речи
Системы автоматического синтеза речиСистемы автоматического синтеза речи
Системы автоматического синтеза речиArtem Lukanin
 

Similar to Способы записи алгоритмов (20)

10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль
 
формальные языки и грамматики
формальные языки и грамматикиформальные языки и грамматики
формальные языки и грамматики
 
Функции в языке программирования QBasic
Функции в языке программирования QBasicФункции в языке программирования QBasic
Функции в языке программирования QBasic
 
эволюция языков программирования
эволюция языков программированияэволюция языков программирования
эволюция языков программирования
 
13 алгоритмизация, программирование, инструментальное по
13 алгоритмизация, программирование, инструментальное по13 алгоритмизация, программирование, инструментальное по
13 алгоритмизация, программирование, инструментальное по
 
гибридная технология перевода. юлия епифанцева. зал.4
гибридная технология перевода. юлия епифанцева. зал.4гибридная технология перевода. юлия епифанцева. зал.4
гибридная технология перевода. юлия епифанцева. зал.4
 
Презентация PROMT для РИТ
Презентация PROMT для РИТПрезентация PROMT для РИТ
Презентация PROMT для РИТ
 
Смолина Пользовательские интерфейсы систем лингвистической разметки текстов
Смолина Пользовательские интерфейсы систем лингвистической разметки текстовСмолина Пользовательские интерфейсы систем лингвистической разметки текстов
Смолина Пользовательские интерфейсы систем лингвистической разметки текстов
 
Ada in education-09-oct06
Ada in education-09-oct06Ada in education-09-oct06
Ada in education-09-oct06
 
Введение в Clojure (Margincon 2010)
Введение в Clojure (Margincon 2010)Введение в Clojure (Margincon 2010)
Введение в Clojure (Margincon 2010)
 
17.03 большакова
17.03 большакова17.03 большакова
17.03 большакова
 
Эмин Р. "Языки Программирования"
Эмин Р. "Языки Программирования"Эмин Р. "Языки Программирования"
Эмин Р. "Языки Программирования"
 
Lec 15
Lec 15Lec 15
Lec 15
 
Некоторые трудности при обучении программированию: что нельзя обойти и умолч...
Некоторые трудности при обучении программированию:что нельзя обойти и умолч...Некоторые трудности при обучении программированию:что нельзя обойти и умолч...
Некоторые трудности при обучении программированию: что нельзя обойти и умолч...
 
Programming history. Algorithm
Programming history. AlgorithmProgramming history. Algorithm
Programming history. Algorithm
 
лекция1
лекция1лекция1
лекция1
 
43828
4382843828
43828
 
АОТ - Предсинтаксис
АОТ - ПредсинтаксисАОТ - Предсинтаксис
АОТ - Предсинтаксис
 
Ayan9r1 po(1)
Ayan9r1 po(1)Ayan9r1 po(1)
Ayan9r1 po(1)
 
Системы автоматического синтеза речи
Системы автоматического синтеза речиСистемы автоматического синтеза речи
Системы автоматического синтеза речи
 

More from Andrey Dolinin

правила сетевого этикета
правила сетевого этикетаправила сетевого этикета
правила сетевого этикетаAndrey Dolinin
 
история вычислительной техники
история вычислительной техникиистория вычислительной техники
история вычислительной техникиAndrey Dolinin
 
информационная культура
информационная культураинформационная культура
информационная культураAndrey Dolinin
 
информационная безопасность
информационная безопасностьинформационная безопасность
информационная безопасностьAndrey Dolinin
 
логика к.поляков
логика к.поляковлогика к.поляков
логика к.поляковAndrey Dolinin
 
история логики и основные логические операции
история логики и основные логические операцииистория логики и основные логические операции
история логики и основные логические операцииAndrey Dolinin
 
представление чисел в памяти компьютера
представление чисел в памяти компьютерапредставление чисел в памяти компьютера
представление чисел в памяти компьютераAndrey Dolinin
 
правила перевода чисел в позиционных системах счисления
правила перевода чисел в  позиционных системах  счисленияправила перевода чисел в  позиционных системах  счисления
правила перевода чисел в позиционных системах счисленияAndrey Dolinin
 
12. задача о напитках
12. задача о напитках12. задача о напитках
12. задача о напиткахAndrey Dolinin
 
12. планируем работу в графическом редакторе
12. планируем работу в графическом редакторе12. планируем работу в графическом редакторе
12. планируем работу в графическом редактореAndrey Dolinin
 
12. обработка информации
12. обработка информации12. обработка информации
12. обработка информацииAndrey Dolinin
 
11. компьютерная графика
11. компьютерная графика11. компьютерная графика
11. компьютерная графикаAndrey Dolinin
 

More from Andrey Dolinin (20)

23 24-211220132336
23 24-21122013233623 24-211220132336
23 24-211220132336
 
правила сетевого этикета
правила сетевого этикетаправила сетевого этикета
правила сетевого этикета
 
история вычислительной техники
история вычислительной техникиистория вычислительной техники
история вычислительной техники
 
информационная культура
информационная культураинформационная культура
информационная культура
 
информационная безопасность
информационная безопасностьинформационная безопасность
информационная безопасность
 
Javascript 1
Javascript 1Javascript 1
Javascript 1
 
Css
CssCss
Css
 
логика к.поляков
логика к.поляковлогика к.поляков
логика к.поляков
 
история логики и основные логические операции
история логики и основные логические операцииистория логики и основные логические операции
история логики и основные логические операции
 
представление чисел в памяти компьютера
представление чисел в памяти компьютерапредставление чисел в памяти компьютера
представление чисел в памяти компьютера
 
правила перевода чисел в позиционных системах счисления
правила перевода чисел в  позиционных системах  счисленияправила перевода чисел в  позиционных системах  счисления
правила перевода чисел в позиционных системах счисления
 
Microsoft access 2007
Microsoft access 2007Microsoft access 2007
Microsoft access 2007
 
Microsoft excel 2007
Microsoft excel 2007Microsoft excel 2007
Microsoft excel 2007
 
Word
WordWord
Word
 
Microsoft word 2007
Microsoft word 2007Microsoft word 2007
Microsoft word 2007
 
Microsoft access 2007
Microsoft access 2007Microsoft access 2007
Microsoft access 2007
 
12. задача о напитках
12. задача о напитках12. задача о напитках
12. задача о напитках
 
12. планируем работу в графическом редакторе
12. планируем работу в графическом редакторе12. планируем работу в графическом редакторе
12. планируем работу в графическом редакторе
 
12. обработка информации
12. обработка информации12. обработка информации
12. обработка информации
 
11. компьютерная графика
11. компьютерная графика11. компьютерная графика
11. компьютерная графика
 

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

  • 2. Ключевые слова • словесное описание • построчная запись • блок-схема • школьный алгоритмический язык
  • 3. Марков А.А. (1903—1979) установил, что алгоритмы должны содержать предписания двух видов: 1) функциональные операторы - предписания, направленные на непосредственное преобразование информации; 2) логические операторы - предписания, определяющие дальнейшее направление действий. Именно эти операторы положены в основу большинства способов записи алгоритмов.
  • 4. Основные способы записи алгоритма Основные способы записи алгоритма СловесныеСловесные ГрафическиеГрафические На алгоритмических языках На алгоритмических языках Словесное описание Построчная запись Последователь- ность рисунков Структурограмма Школьный алгоритмический язык Язык программирова- ния Блок-схема
  • 5. Словесное описание Словесное описание - самая простая запись алгоритма в виде набора высказываний на обычном разговорном языке. Пример. Словесное описание алгоритма нахождения наибольшего общего делителя (НОД) пары целых чисел (алгоритм Евклида). Чтобы найти НОД двух чисел, составьте таблицу из двух столбцов и назовите столбцы X и Y. Запишите первое из заданных чисел в столбец Х, а второе - в столбец Y. Если данные числа не равны, замените большее из них на результат вычитания из большего числа меньшего. Повторяйте такие замены до тех пор, пока числа не окажутся равными, после чего число из столбца Х считайте искомым результатом.
  • 6. Построчная запись Кроме слов естественного языка предписания могут содержать математические выражения и формулы. Каждое предписание записывается с новой строки Правила построчной записи алгоритмаПравила построчной записи алгоритма Предписание (шаги) алгоритма нумеруются Исполнение алгоритма происходит в порядке возрастания номеров шагов, начиная с первого, если нет особых указаний
  • 7. Построчная запись алгоритма Евклида Построчная запись алгоритма Евклида 1. Начало. 2. Обозначить первое из заданных чисел Х, второе - Y. 3. Если Х = Y то перейти к п. 9. 4. Если X >Y , то перейти к п. 5, иначе перейти к п. 7. 5. Заменить X на X-Y. 6. Перейти к п. 3. 7. Заменить Y на Y-X 8. Перейти к п. 3. 9. Считать Х искомым результатом. 10. Конец.
  • 9. Блок-схемы В блок-схеме предписания изображаются с помощью различных геометрических фигур, а последовательность выполнения шагов указывается с помощью линий. Блок начала или конца алгоритма Блок ввода или вывода данных Блок обработки данных Блок проверки условия Блок пояснительных записей
  • 10. Ввод значений X и Y Проверка равенства X и Y Определение большего из X и Y Уменьшение большего числа на величину меньшего Определение НОД Вывод НОД Да Нет Начало X<Y Конец X,Y X=Y НОД:=Х НОД Y:=Y-X X:=X-Y Да Нет Запись алгоритма Евклида с помощью блок-схемы
  • 11. Алгоритмические языки Алгоритмические языки - формальные языки, предназначенные для записи алгоритмов. Характеристики алгоритмического языкаХарактеристики алгоритмического языка Набор используемых символов Система правил образования конструкций языка Система правил, определяющих смысл и способ употребления конструкций языка СинтаксисСинтаксис СемантикаСемантика АлфавитАлфавит
  • 12. Общий вид программы на школьном алгоритмическом языке: алг <название алгоритма> нач <последовательность команд> кон
  • 13. алг переливания нач наполнить сосуд ёмкостью 8 л из сосуда ёмкостью 12 л наполнить сосуд ёмкостью 5 л из сосуда ёмкостью 8 л вылить всё из сосуда ёмкостью 5 л в сосуд ёмкостью 12 л вылить всё из сосуда ёмкостью 8 л в сосуд ёмкостью 5 л наполнить сосуд ёмкостью 8 л из сосуда ёмкостью 12 л долить из сосуда ёмкостью 8 л сосуд ёмкостью 5 л вылить всё из сосуда ёмкостью 5 л в сосуд ёмкостью 12 л кон Алгоритм для исполнителя Водолей
  • 14. Самое главное Существуют различные способы записи алгоритмов: • словесное описание • построчная запись • блок-схема • школьный алгоритмический язык и другие. Каждый из этих способов обладает своими достоинствами и недостатками.
  • 15. Вопросы и задания Каковы основные способы записи алгоритмов?Чем вызвано существование многих способов записи алгоритмов? Дайте словесное описание алгоритма сложения двух обыкновенных дробей a/b и c/d. Представьте в виде построчной записи алгоритм решения следующей задачи: «Имеются четыре арбуза различной массы. Как, пользуясь чашечными весами без гирь, путём не более пяти взвешиваний расположить их по возрастанию веса?». Представьте с помощью блок-схемы алгоритм решения следующей задачи: «Из трёх монет одинакового достоинства одна фальшивая (более лёгкая). Как её найти с помощью одного взвешивания на чашечных весах без гирь?». Запишите на алгоритмическом языке алгоритм построения окружности заданного радиуса r, проходящей через заданные точки А и В.
  • 16. Алгоритмический язык Алгоритмический язык Опорный конспект СловесныйСловесный Блок-схемаБлок-схема Способы записи алгоритмовСпособы записи алгоритмов Обычный разговорный язык Геометрические фигуры Слова имеют заданный смысл и способ записи