Типы алгоритмических структур



Объект, который будет выполнять алгоритм, обычно называют исполнителем. Компьютер - автоматический исполнитель алгоритмов. Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой. Каждый исполнитель характеризуется средой («местом обитания») и системой команд. Среда (или обстановка) - это «место обитания», множество объектов, которые окружают исполнителя. 

Совокупность всех команд, которые исполнитель может выполнить, называется системой команд исполнителя. За каждой командой из системы команд исполнителя закреплено конкретное элементарное действие. Отказы исполнителя возникают при вызове команды в недопустимом для данной команды состоянии среды. Другими словами – это случай, когда попытка выполнить команду приводит к аварии. Учебными исполнителями называют различные образы на экране компьютера, которыми можно управлять, отдавая команды. Используются они для обучения составлению управляющих алгоритмов.

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

В отличие от формального, неформальный исполнитель всегда интересуется, зачем он выполняет то или иное действие, стремится выполнить его лучше, эффективнее (с его точки зрения). 

Технические устройства (в том числе и компьютер как совокупность аппаратного и программного обеспечения) могут быть только формальными исполнителями, в этом случае результат их действий предсказуем. Человек-пользователь не объясняет исполнителю-компьютеру свои цели и смысл команд программы. Очевидно, что компьютер и не сможет понять смысла совершаемых им действий. Более того, компьютер не обладает способностью к анализу результатов, например, относительно их соответствия постановке задачи. 

Работа ни одного устройства компьютера не обходится без программы и исходных данных к ней. Не только устройства компьютера, но и каждое программное средство можно рассматривать в качестве формального исполнителя, который характеризуется своей системой команд, средой, системой отказов. 

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

Компьютер не сможет выполнить команду, если она предназначается устройству, не подключенному к компьютеру, или отсутствует в его системе команд, или содержит синтаксическую ошибку. Если программа составлена правильно, то процессор выполнит ее за конечное число шагов и выдаст человеку результат решения задачи. 

Человек, принимая во внимание этот факт, должен понимать ограниченность возможностей компьютера как исполнителя и предусматривать тонкость в задании команд, поручаемых компьютеру для исполнения, так как вся ответственность за использование компьютеров лежит только на людях.

Примеры

Пример 1. Линейным является алгоритм перевоза через реку Волка, Козы и Капусты, при условии, что в лодке можно перевозить только один из указанных объектов, а на берегу вместе не могут находиться Коза и Волк, а также Коза и Капуста:

1) перевези Козу;

2) вернись на исходный берег;

3) перевези Волка;

4) вернись на исходный берег с Козой;

5) перевези Капусту;

6) вернись на исходный берег;

7) перевези Козу.

Алгоритм P реализован с использованием ветвящейся алгоритмической конструкции(ветвления), если на каком-либо шаге последовательное выполнение алгоритма прерывается, и выбор следующего шага определяется входными данными алгоритма. Ветвление задает выполнение либо одной, либо другой группы операторов в зависимости от выполнения какого-либо условия (в зависимости от истинности или ложности соответствующего логического выражения. Затем исполнение алгоритма выходит на общее продолжение. Для конкретных входных данных ветвящаяся алгоритмическая конструкция сводится к последовательной алгоритмической конструкции. Ветвление бывает полным и неполным. В случае неполного ветвления при невыполнении условия никакие действия не выполняются.

Пример 2.Запишем в словесной форме алгоритм решения уравнения ax2 + bx + c = 0, где a, b, c — произвольные действительные числа, а x — искомая величина. Если a ≠ 0, то для нахождения корней используются известные формулы, при этом существование корней зависит от знака дискриминанта квадратного уравнения. Если a = 0, то уравнение становится линейным. Однако при b = 0 оно вырождается в равенство c = 0. Поэтому, если c действительно равно 0, то все действительные числа являются корнями такого уравнения, в противном случае — корней нет. Ниже приведена блок-схема данного алгоритма.

Вопросы для закрепления нового материала с эталонами ответа

 

1. Что такое алгоритм?

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

 

2. Назовите свойства алгоритма.

Алгоритм обладает следующими свойствами.

1. Дискретность (от лат. discretus – разделенный, прерывистый) указывает, что любой алгоритм должен состоять из конкретных действий, следующих в определенном порядке. 

2. Детерминированность (от лат. determinate – определенность, точность) указывает, что любое действие алгоритма должно быть строго и недвусмысленно определено в каждом случае. 

3. Конечность определяет, что каждое действие в отдельности и алгоритм в целом должны иметь возможность завершения.

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

5. Массовость заключается в возможности применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных (разработка в общем виде).

 

3. Какие вы знаете способы описания алгоритма?

Способы описания алгоритмов:

• словесный (на естественном языке);

• графический (с помощью стандартных графических объектов (геометрических фигур) – блок-схемы);

• программный (с помощью языков программирования).

 

Список использованной литературы

1. Цветкова М. С., Великович Л. С. Информатика и ИКТ: учебник для студ. учреждений сред.проф. образования. — М., 2014.

2. Омельченко В. П., Демидова А. А.. Информатика. Учебник для медицинских училищ и колледжей. - М.: ГЭОТАР-Медиа, 2015 г.

3. Угринович Н.Д. Информатика и информационные технологии. Учебник 10–11 кл. – М.: БИНОМ. Лаборатория знаний, 2016.

4. Семакин И.Г., Хеннер Е.К. Информатика и ИКТ. Базовый курс. Учебник для 10-11 кл. – М.: Изд-во «БИНОМ. Лаборатория знаний», 2015

5. Макарова Н. В., Николайчук Г. С., Титова Ю. Ф., Информатика и ИКТ, 10 класс, Базовый уровень – СПб.: Питер, 2017

6. Макарова Н. В., Николайчук Г. С., Титова Ю. Ф., Информатика и ИКТ, 11 класс, Базовый уровень – СПб.: Питер, 2017

Приложение № 1


Дата добавления: 2020-11-29; просмотров: 122; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!