Вы находитесь на странице: 1из 16

Титульный лист

Оглавление
Введение...................................................................................................................3
Основная часть........................................................................................................4
Исполнители.........................................................................................................4
Алгоритмы............................................................................................................6
Алгоритмические языки......................................................................................9
Типы алгоритмов................................................................................................11
Заключение............................................................................................................15
Список использованных источников..................................................................16
Введение
В век компьютерных технологий человеку все чаще приходится
сталкиваться с техническими устройствами, работающими под управлением
программ, основанных на алгоритмах. Но если обычному пользователю
можно просто использовать оборудование, не задумываясь как оно работает,
то человеку, непосредственно связанному с производством, в котором
ведущую роль играют компьютерные технологии, нужно обязательно знать
принципы работы управляющих программ. Я не говорю уже о людях,
которые могут самостоятельно написать и реализовать программный код.

Все программы, конечно же, основаны на алгоритмах, точное


определение которых дадим чуть позже. Да и многие аспекты нашей жизни,
наши повседневные действия и задания зачастую выполняются по
слаженному и отработанному годами алгоритму. Например, чтобы собраться
утром в школу мы каждый день выполняем последовательно одни и те же
действия, которые позволяют в результате собраться и ничего не упустить.
Рецепт в маминой кулинарной книге тоже четкий набор действий, в
результате, которого получается вкусное блюдо. И таких примеров в жизни
большое множество. Даже задачи по математике зачастую можно решить,
придерживаясь определенного алгоритма – последовательности действий. Но
самое главное во всех этих примерах - это знать эту последовательность или
уметь, на основе опыта, составлять ее, чтобы достичь нужного результата.

Именно поэтому уже с детского сада и, продолжая в начальной школе


детей учат пользоваться готовыми алгоритмами, а уже со средней школы и
составлять свои, развивая тем самым алгоритмическое мышление у ребенка.
Во взрослой жизни этот опыт и знания позволит решать более сложные
задачи, разделяя сложный процесс на несколько этапов, каждому из которых
будет соответствовать действие, выполнение которого не представляет
трудности.
3
Основная часть

Исполнители
Постепенно мы пришли к пониманию того, что все заданные действия
(команды) должен уметь кто-либо исполнять. Люди, животные или
технические устройства (компьютеры, роботы, телефоны и т.д.), которые
понимают и исполняют команды, являются исполнителями. Исполнитель
обязательно должен правильно понимать команды и уметь их выполнять,
поэтому у каждого исполнителя существует свой набор команд (система
команд исполнителя - СКИ), понятных ему и не вызывающих
неоднозначного их восприятия. Понятно, что у человека среди всех других
исполнителей самый большой набор понятных ему команд.

У каждого исполнителя есть среда, обстановка, условия, в которых он


действует. Это определяет среду исполнителя. Так же каждый исполнитель
(не живой) создается для решения определенных проблем и задач. Это
определяет круг решаемых задач исполнителя. Иногда возникает ситуация
с системой отказов исполнителя. Это происходит в двух случаях, если
команда, поданная исполнителю, не входит в его СКИ, или если команда не
может быть выполнена в данных условиях среды исполнителя. Также
различают два режима работы исполнителей -это непосредственное
управление (покомандное) и программное (полная последовательность
команд).

В школьном курсе информатики и ИКТ понятие исполнителей изучают


уже с 3-го класса, на примере компьютерных программ, представленных в
виде игр. Это может быть исполнитель Кузнечик и другие в «Кумире»(рис.1)
или Рыжий кот в Scratch (рис.2), или Робот из «ПиктоМир» (рис.3 ). Есть
много обучающих программ для школьного и младшего школьного возраста
и все они направлены на понимание действий исполнителя и составления
последовательности команд для него.

4
Рис.1

Рис.2

Рис.3
5
Алгоритмы
Вот мы и подошли непосредственно к главному понятию нашего
сообщения – алгоритм. Что это такое? Как отличить алгоритм от несвязного
набора действий? Способы записи алгоритмов? Какие виды алгоритмов
бывают? Где в компьютерной среде их можно реализовывать? Ответим на
все эти вопросы постепенно.

Алгоритм – это конечная последовательность указаний (действий,


команд), формальное выполнение которых позволяет за
ограниченное время получить решение задачи (достигнуть
желаемого результата). Кстати, само слово произошло от
латинского написания слова Аль-Хорезми (algorithm). Так звали
величайшего математика из Хорезма Мухамеда бен Мусу
Рис. 4
(рис.4), жившего в 783-850 гг.

Возникает естественный вопрос: Любую ли последовательность


команд можно назвать алгоритмом? Оказывается, нет - не любую. Чтобы
набор указаний был алгоритмом, он должен обладать некоторыми
свойствами.

Свойства алгоритма:

1. Конечность. Действуя в соответствии с алгоритмом, исполнитель


получит желаемый результат за конечное число (иногда может и
большое) шагов
2. Результативность. В случае выполнения алгоритма мы должны
получить ожидаемый результат
3. Массовость. Алгоритм должен быть пригодным для многих задач,
принадлежащих к некоторому классу. Другими словами, массовость
позволяет использовать один алгоритм для разных входных данных.
4. Однозначность (определенность). Нужно помнить, что
исполнитель не должен думать. Все команды должны иметь четкие

6
указания и не допускать двоякого истолкования. Каждый шаг
алгоритма должен быть точно определен.
5. Дискретность. Процесс, который определяется алгоритмом, должен
иметь дискретный (прерывистый) характер и представлять собой
последовательность отдельных завершенных шагов.
6. Формальность. Любой исполнитель, способный принимать и
выполнять указания алгоритма (даже не понимая их содержания),
может выполнить поставленную задачу, действуя по предписаниям
алгоритма.

Иначе говоря, алгоритм – это некоторая инструкция для исполнителя,


которая может быть задана разными способами. Рассмотри способы записи
алгоритмов:

1. Словесный – алгоритм записан на одном из естественных языков.


Например: алгоритм «Как открыть дверь»
 Достать ключ
 Вставить ключ в отверстие
 Повернуть ключ два раза
 Вынуть ключ
2. Представление алгоритма в
виде таблиц, формул, схем,
рисунков и т.д. Например,
схема оригами (рис.5)

Рис. 5

3. Запись алгоритма при помощи блок схем. Этот метод был


предложен в информатике для наглядности представления
алгоритма при помощи набора специальных блоков.
7
Фигуры (блоки) блок-схемы Таблица 1

Овал. Начало или конец алгоритма

Параллелограмм. Ввод или вывод


данных для алгоритма
Ромб. Условие для принятия
решения о дальнейшем
выполнении тех или иных
действий
Прямоугольник. Выполняемое
действие.
Выноски и комментарии к
алгоритму.
Например, блок-схема алгоритма вычисления суммы 10-ти чисел (рис.6)

Рис. 6

4. Алгоритмические языки – формальные языки, предназначенные для


записи алгоритмов. Рассмотрим некоторые из них более подробно.

8
Алгоритмические языки
Напомним, что алгоритми́ческий язык — формальный язык, используемый
для записи, реализации или изучения алгоритмов. Каждый из них имеет свой
алфавит, синтаксис, семантику. Класс алгоритмических
языков очень широк.

Детям школьного возраста предлагают составлять


программы (- это алгоритмы записанные на языке, понятном
исполнителю) на школьном алгоритмическом языке ШАЯ-
это алгоритмический язык с русским синтаксисом, был введен Рис.7

академиком А.П. Ершовым (рис.7) в середине 1980 годов в


качестве основы для «безмашинного» курса информатики. Исполнители в
среде программирования Кумир могут действовать под управлением команд,
написанных на этом языке. Но не только на нем.

Пример алгоритма для исполнителя Чертежник среды программирования


Кумир, реализующего задачу по построению прямоугольника с заданными
длинами сторон (рис.8)

9
Рис.8

Затем усложняя, предлагается язык программирования


Pascal-это универсальный язык программирования,
позволяющий решать самые разнообразные задачи
обработки информации, был разработан профессором,
директором Института информатики Швейцарской
высшей политехнической школы Никлаусом Виртом
(рис.9) в 1968-1970 годах как язык обучения студентов Рис. 9
программированию. С тех пор язык программирования
Pascal становиться все более и более популярным, но
чаще всего его используют теперь в качестве обучения
школьников азам создания программного кода. К слову
сказать, язык программирования Pascal был назван в
честь французского ученого Блейза Паскаля, который
еще в 1642 году изобрел первую счетную механическую
Рис. 10
машинку (рис. 10).

Пример алгоритма,
подсчитывающего сумму, разность и
произведение двух чисел, реализованного в
среде программирования Pascal ABC (рис. 11)

Рис. 11

И уже далее для самостоятельного развития и обучения


школьник может выбирать среди таких языков, как Delphi, Python, Visual
Basic и многие другие (рис. 12)
10
Рис.12

Типы алгоритмов
Человеку в жизни приходится решать множество различных задач. Решение
каждой из них описывается своим алгоритмом и их разнообразие очень
велико. Но в любом алгоритме команды записываются в строго
определенном порядке и для решения любой, даже самой сложной задачи
достаточно только трех основных алгоритмических конструкций.
Рассмотрим эти конструкции более детально на примере их реализации в
блок-схемах, в школьном алгоритмическом языке и языке программирования
Pascal.

Типы алгоритмов:

1. Линейный алгоритм (конструкция следования) – отображает


естественный, последовательный порядок действий. Команды следуют
строго одна за другой (Таблица 2)
Таблица 2
Блок-схема Школьный Pascal
алгоритмический
язык
Алгоритмическа Алг Program
я конструкция <Данные> Var <Данные>
Нач Begin
Ввод <Действия>
<Действия> End.
Вывод
кон

11
Пример Алг среднее Program
программы, арифметическое srednee_arifm;
считающей Вещ a, b, Sr Var a, b, Sr:real;
среднее Нач Begin
арифметическое Ввод a, b Readln (a, b);
двух чисел Sr:=(a+b)/2 Sr:=(a+b)/2;
Вывод Sr Writeln (Sr);
кон End.

2. Разветвляющийся алгоритм или алгоритм с условием (конструкция


ветвления) – это структура алгоритма, которая обеспечивает выбор
между двумя путями следования. Выполняется проверка поставленного
условия, а потом выбирается один путь. Различают алгоритмы с
полным (на каждый результат выполнения условия есть действие) и
неполным (на отрицательное выполнение условия действия нет,
алгоритм переходит к концу или действиям не связанным с
предыдущим условием) ветвлением (Таблица 3)
Таблица 3
Блок-схема Школьный Pascal
алгоритмический
язык
Алгоритмичес Алг Program
кая Нач Var <Данные>
конструкция <Данные> Begin
1.Неполное Ввод If <условие>
ветвление Если <условие> then <Действие>
то <Действие> End.
Вывод
кон
Алг Program
Нач Var <Данные>
2. Полное <Данные> Begin
ветвление Ввод If <условие>
Если <условие> then <Действие>
то <Действие> else
иначе <Действие> End.
<Действие>
Вывод
кон

12
Пример Алг большее Program
программы, число bolshie_chislo
определяюще Нач Var a, b, max:real:
й наибольшее Вещ a, b, max Begin
из двух Ввод a, b Readln (a, b);
введенных Если a>b то If a>b then
чисел max:=a иначе max:=a else
(использовано max:=b max:=b
полное Вывод max writeln (max);
ветвление) кон End.
3. Циклические алгоритмы (конструкция повторения) – такие алгоритмы
обеспечивают многоразовое повторение одного и того же действия
(или нескольких действий) над новыми начальными данными. Цикл
должен обязательно заканчиваться при каком-либо условии. Проверять
условия можно двумя способами:
- в начале каждого повторения, тогда такой цикл называется «пока»
или с предусловием или с заданным условием продолжения работы;
- в конце каждого повторения, тогда такой цикл называется «до» или с
постусловием, или с заданным условием окончания работы;
Так же различают циклический безусловный алгоритм (или цикл
«перечень»), в нем переход на следующее или предыдущее действие
происходит без проверки условия. Такие циклы еще называют циклами
с заданным числом повторений или циклами с параметром (Таблица 4)
Таблица 4
Блок-схема Школьный Pascal
алгоритмический
язык
Алгоритмичес Алг Program
кая Нач Var <Данные>
конструкция <Данные> Begin
1.Цикл Ввод While
«пока» нц пока <условие> do
<условие> begin
<Действия> <Действия>
кц End.
Вывод
кон
13
2. Цикл «до» Алг Program
Нач Var <Данные>
<Данные> Begin
Ввод Repeat
нц <Действия>
<Действия> Until <условие>
кц при<условие> End.
Вывод
кон

3.Цикл с Алг Program


параметром Нач Var <Данные>
<Данные> Begin
Ввод For
нц <параметр:=нач
для i от i1 до i2 альное
шаг R значение> to
<Действия> <конечное
кц значение> do
Вывод <Действие>
кон End.
Пример Алг сумма Program
программы, нечетных чисел summa_nech
подсчитываю Нач Var i, n,
щей сумму Вещ S, i, n S:integer;
нечетных Ввод n Begin
чисел, не S:=0 Readln (n);
превышающи i:=1 S:=0;
х введенное с нц пока i<=n i:=1;
клавиатуры S:=S+1 While i<=n do
число i:=i+2 begin
(использован кц S:=S+1
цикл «пока») Вывод S i:=i+2
кон end;
writeln (S)
End.

14
Заключение
Рассмотрев три основных вида алгоритмических вычислительных
процессов – это линейный алгоритм, разветвляющийся и циклический,
можно сделать вывод, что все жизненные задачи можно представить одним
из этих алгоритмов. Сложные программы, составляются из этих простейших
алгоритмов, как высотный дом строится из кирпичей.
Очень важно помнить и учитывать, что алгоритм состоит из команд, если
все команды записаны верно, в правильном порядке и выполнены без
ошибок, то поставленная задача всегда будет решена. Правильный алгоритм
придумать не легко, ведь каждую команду нужно описать очень точно.
Алгоритм, написанный для исполнителя «компьютер», уже будет называться
программой.
Хотелось бы подвести итог проделанной работы по теме «Алгоритмы и
исполнители» иллюстрацией из детской книги, которая показывает, что
компьютеры и правильно составленные программы (алгоритмы) обязательно
помогут быстрее и точнее справиться с любой жизненной задачей.

15
Список использованных источников
1. http://www.youloveit.ru/handmade/podelki/3317-prostoe-origami-
koala.html
2. https://piktomir.ru
3. https://scratch.mit.edu
4. https://www.niisi.ru/kumir/
5. https://en.ppt-online.org/456582
6. https://sites.google.com/site/alhorezmii/home/biografia
7. http://www.dut.edu.ua/ru/news-1-1009-2644-segodnya-15-fevralya-
otmechaet-svoy-den-rozhdeniya-niklaus-virt-sozdatel-yazyka-paskal
8. https://pptcloud.ru/informatika/yazyk-programmirovaniya-turbo-pascal-7-0
9. http://edu.tsu.ru/eor/resourse/173/html/96.html
10.Анохина И.Ю. Компьютер для умных детей: растим таланты/
И.Ю.Анохина. – Ростов н/Д: Феникс, 2010. – 411, [1] с.: ил. – (Школа
развития)
11.Верлань А.Ф., Апатова Н.В. Информатика: Учебник для учащихся 10-
11 кл. средн. Общеобразоват.шк. – К.: Форум, 2001 – 255 с.: ил. – Рос.
12.Коршунова О.В. Информатика. 2-4 классы: Учебно-методическое
пособие. – 2-е изд. Доп.и перераб. – Харьков: ФОП Спивак Т.К., 2009. –
368 с.
13.Босова Л.Л. Информатика: учебник для 8 класса/ Л.Л.Босова,
А.Ю.Босова. -2-е издание., испр. – М.: БИНОМ. Лаборатория знаний,
2014. – 160с.: ил.
14.Босова Л.Л. Информатика: учебник для 6 класса/ Л.Л.Босова,
А.Ю.Босова.– М.: БИНОМ. Лаборатория знаний, 2013. – 213с.: ил.
15. Зарецкий А.В. и др.Энциклопедия профессора Фортрана: Для детей мл.
шк. Возраста/А.В.Зарецкий, А.В.Труханов, М.О.Зарецкая;
Худож.Э.Л.Десятник. – М.: Просвещение 1991. – 191с.: ил.

16

Оценить