Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Сущность понятия «Алгоритм», виды и свойства алгоритма




 

Понятие алгоритма - одно из фундаментальных понятий информатики. Алгоритмизация наряду с моделированием выступает в качестве общего метода информатики. К реализации определенных алгоритмов сводятся процессы управления в различных системах, что делает понятие алгоритма близким и кибернетике [13].

Началом систематической разработки теории алгоритмов можно считать 1936 год, и связывают это с публикацией работы А.А. Черча. Но первое научное определение понятия алгоритма сформировалось в 1920-х годах [15]. Так что же такое алгоритм? В научно-педагогической и методической литературе существуют различные подходы к определению этого понятия.

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

Н. Д. Угринович [22, с.107] трактует это понятие так: «алгоритм – это описание детерминированной последовательности действий, направленных на получение из исходных данных результата за конечное число дискретных шагов с помощью понятных исполнителю команд».

Обратимся и к другим источникам формулирующим данное понятие.

«Алгоритм – понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к исходному результату» [17,с.151]. «Алгоритм – описание конечной последовательности шагов в решении задачи, приводящей от исходных данных к требуемому результату» [3, с.101].

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

Теория алгоритмов находит применение в различных сферах деятельности человека. Появление компьютеров внесло свою лепту в эту теорию. Алгоритмы, реализованные на компьютере, позволили решать сложные задачи в различных областях, например:

- в медицине – автоматическая диагностика и обработка данных компьютерной томографии;

- в производстве – управление техническими устройствами, заменяющими человека в сложных или опасных для жизни условиях;

- в кинематографии – обработка изображений, моделирование пейзажей и движений, сжатие аудио- и видеоинформации;

- в Интернете – увеличение скорости поиска и обработки данных поисковыми системами;

- в аэрокосмонавтике – управление космическими кораблями и спутниками и т.д. [8];

Можно выделить общие свойства, которыми должен обладать любой алгоритм независимо от того, к какой сфере деятельности или области знаний он относится, и кто его выполняет. Но для начала давайте определим, что подразумевает под собой данное понятие. «Свойство алгоритма – это набор характеристик, атрибутов, отличающих алгоритм от любых других предписаний и обеспечивающих его автоматическое выполнение» [24, с.199]. Существуют следующие свойства:

- дискретность;

- детерминированность;

- массовость;

- результативность;

- конечность.

Рассмотрим все эти свойства на конкретном примере.

Представьте, что вы отправились с друзьями в поход и вам нужно разжечь в лесу костер. Алгоритм разжигания костра при хорошей погоде может выглядеть следующим образом [8]:

1. Выберите место для костра в отдалении от деревьев и кустов.

2. Соберите сухие ветки.

3. Сложите их недалеко от выбранного для костра места.

4. На месте костра сложите «шалашиком» тонкие сухие ветки.

5. Положите под ветки бумагу для растопки.

6. Подожгите бумагу.

7. По мере разгорания, подкладывайте более толстые сухие ветки, соблюдая расстояние между ними для вентиляции.

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

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

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

Так как для разжигания костра мы можем использовать ветки различных деревьев, и источником огня могут быть спички, лупа или зажигалка, то мы можем определить, что этот алгоритм обладает и таким свойством как массовость. Свойство массовости понимается как применимость алгоритма к решению бесконечного класса однотипных задач, различающихся исходными данными [1,19, 22].

После выполнения всех действий мы получим огонь. Из этого следует очень важное свойство – результативность.

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

Алгоритм, составленный для некоторого исполнителя, можно представить различными способами: с помощью графического или словесного описания, последовательностью формул, записанным на алгоритмическом языке. Остановимся на графическом описании алгоритма, называемом блок-схемой. Этот способ имеет ряд преимуществ благодаря наглядности, обеспечивающей, в частности, высокую «читаемость» алгоритма и явное отображение управления в нем [13]

Для отображения алгоритма в виде блок-схемы используется стандартный набор графических объектов (блоков), перечень и условные обозначения которых приведены в таблице 1 [19]. Использование блок-схем, состоящих из типового набора блоков, позволяет трактовать алгоритм однозначно.

Таблица 1 – Стандартные графические объекты блок-схем

Вид блока Назначение блока
Указание на начало и конец алгоритма
Организация ввода и вывода данных
Непосредственное выполнение действия
Проверка условия
Повторение ряда действий

 

Любой, даже самый сложный алгоритм, можно представить с помощью трех типовых конструкций (структур): следования, ветвления и цикла. На рисунке 1 представлены блок-схемы этих базовых структур.

В зависимости от того, какие базовые структуры использованы при составлении алгоритмов, различают три основные разновидности алгоритмов: линейный, разветвляющийся и циклический.

Линейный алгоритм – это алгоритм, в котором действия выполняются последовательно одно за другим.

В отличие от линейных алгоритмов, в разветвляющийся алгоритм входит условие. В зависимости от выполнения или невыполнения условия реализуется одна или другая последовательность команд [23]. Различают полную и неполную форму ветвления.

При полной форме действия выполняются в обоих случаях: и при истинности, и при ложности условия. Ей соответствует следующее выражение: если <условие>, то <действие 1>, иначе то <действие 2>.

Неполной форме ветвления соответствует выражение: если <условие>, то <действие >.

Циклический алгоритм – это схема выполнения части алгоритма, в которой некоторые действия повторяются [15]. Они могут содержать разные виды циклов:

- цикл со счетчиком – это цикл с известным числом повторений;

- цикл с постусловием – это цикл с неизвестным числом повторений, в котором выход из цикла осуществляется при выполнении условия;

- цикл с предусловием – это цикл с неизвестным числом повторений, в котором цикл продолжается, пока выполняется условие [8].

Обобщая все вышеизложенное можно сказать, что под алгоритмом понимают понятное и точное предписание исполнителю совершить последовательность действий, направленных на достижение поставленной цели. Алгоритм обязательно должен обладать свойствами, такими как: детерминированность, массовость, понятность, дискретность и результативность. Различают линейные алгоритмы, алгоритмы с ветвлением и с повторением. Если провести более или менее внимательный анализ, то окажется, что большую часть своих действий человек выполняет по определенным алгоритмам, иногда даже не осознавая этого. Так что роль алгоритмов в жизни человека трудно переоценить.

 

1.3 Анализ учебного материала в методической литературе по разделу «Алгоритмизация»

 

До не давнего времени в начальной школе, в программу преподавания информатики включался раздел «Модель и моделирование», в котором учащихся впервые знакомили с понятием алгоритма и его типами.

Автором одного из учебников «Информатика и ИКТ» для начальной школы является Н. В. Матвеева [12]. На изучение алгоритмизации в четвертом классе по ее программе отводится 8 часов. В этот момент происходит первое знакомство детей с понятием «алгоритм» и с тем, какими они могут быть. В процессе изучения алгоритмов идет знакомство с исполнителями и языками программирования, формами записи алгоритмов. Дети осваивают понятие управления: собой, другими людьми, техническими устройствами (инструментами работы с информацией), ассоциируя себя с управляющим объектом и осознавая, что есть объект управления, осознавая цель и средства управления. В конце раздела проводится контрольная работа.

В шестом классе Босова Л. Л. [3] рассматривает понятие алгоритма, формы записи алгоритмов и их типы в разделе «Алгоритмы и исполнители». На изучение этих тем в планировании отводится пять часов, и также в конце раздела предусмотрена контрольная работа для выявления усвоенных учащимися знаний. В учебнике дается определение основных понятий, приводятся примеры, в конце каждого параграфа предлагается ответить на контрольные вопросы и выполнить задания. Но понятия не собраны в единую схему или таблицу, для установления связей между ними, что могло бы способствовать более полному их усвоению и пониманию, учитывая не значительное количество часов отведенных на эту тему. Следует также отметить, что компьютерный практикум по этому разделу проходит в среде Power Point и не связан с теоретической частью, а это так же не способствует осознанию значимости полученных знаний и закреплению материала.

В седьмом классе Босова Л. Л. [4] продолжает знакомить учеников с алгоритмами в разделе «Алгоритмика». По содержанию и по отведенным на него часам он не много больше, около 7 часов. В этом разделе так же даются понятия «алгоритм» и «исполнитель», но внимание на этом особо не акцентируется, в основном рассматривается исполнение алгоритма. И на этой основе учащихся знакомят с основными исполнителями Чертежник и Робот и с принципами работы в них.

В шестом классе этой темы касается Н. В. Макарова [7] при изучении компьютерной графики. И так как раздел посвящен в основном построению графических изображений, темы связанные с алгоритмами рассматриваются вскользь: дается понятие алгоритма, говорится о том, какие бывают алгоритмы, а также о происхождении этого слова. Всего на эти темы отводится около четырех часов, но при условии, что основной упор на уроке будет идти на графику. Понятия об алгоритмах включены в этот раздел не для того, чтобы познакомить учащихся с ними, а для того, чтобы в дальнейшем на основе полученных представлений научить детей строить графические изображения по алгоритму.

В восьмых-девятых классах Макарова [8] продолжает знакомить учеников с алгоритмами в разделе «Программное обеспечение информационных технологий». Здесь уже предлагается расширенный курс по алгоритмизации. Учащиеся знакомятся с понятием алгоритма, его свойствами, формами представления, а затем типами алгоритмов и отводится на все это около 6 часов. Для лучшего понимания и усвоения знаний, умений и навыков, вся эта информация предложена с большим разнообразием примеров.

В рассмотрение понятий об алгоритмах в девятом классе включаются Угринович Н. Д. и Семакин И. Г.. У Н. Д. Угриновича [22] раздел называется «Основы алгоритмизации и объектно-ориентированного программирования». На изучение этого раздела отводится двадцать часов из них всего около пятых часов на рассмотрение непосредственно всего, что касается алгоритмов: понятия «алгоритм», «исполнитель», свойства и типы алгоритмов, а также отводится внимание теме «Выполнению алгоритма на компьютере». В конце раздела предусмотрено проведение контрольной работы, в состав которой входят вопросы по алгоритмизации. Еще ранее этот раздел присутствовал в учебнике для десятых-одинадцатых классов [23], но в настоящий момент Н. Д. Угринович не останавливается на алгоритмизации в старших классах.

Семакин И. Г. [17] предлагает в девятом классе раздел «Управление и алгоритмы», на который можно отвести около 8 часов и обязательно проведение в конце раздела контрольной работы. В своем учебнике Семакин дает определение понятию «алгоритм», знакомит с его свойствами и типами. Акцент делается на исполнение алгоритма, больше говорится о программах и подпрограммах. На этом работа с алгоритмами не прекращается. В следующем разделе «Программное управление работой компьютера» компьютер рассматривается как исполнитель алгоритма, поэтому идет знакомство с правилами записи алгоритмов на языке программирования.

И. Г. Семакин [18] затрагивает алгоритмы еще и в десятых-классах классах в разделе «Информационные модели», но только поверхностно. Алгоритм рассматривается как модель деятельности всего в одном параграфе.

Проанализировав имеющуюся информацию можно сделать вывод, что разделы, связанные с алгоритмизацией имеются практически у каждого автора учебников по информатике, рассматривается эта тема в разных классах, и объединяет их незначительное количество отведенных часов, не смотря на важность темы и трудности в усвоении. При рассмотрении всех учебных пособий, можно так же проследить, что в пятом классе не уделяется внимание изучению алгоритмизации. Внимание сосредотачивается на появившиеся новые аспекты деятельности и происходит частичная потеря ранние усвоенных понятии этого раздела и знаний в целом. Поэтому, нам представляется очень важно уделить большее количество внимания изучению алгоритмизации в шестых классах, для заполнения пробелов в знаниях по этой теме, сформировавшихся в результате упущения изучения этого раздела при переходе из младшего звена в среднее. Для этого необходимо выявить педагогические условия, способствующие наиболее полному усвоению материала по разделу «Алгоритмизация» в шестом классе, и именно базовому понятию этого раздела – алгоритм.

Проведенное нами исследование показало, что усвоение понятия относится к умению выявлять свойства, присущие некоторому классу объектов или идей, а овладение понятиями – процесс, зависящий от уже имеющихся знаний, от деятельности, осуществляемой в процессе усвоения, от системы умственных операций, которыми оно осуществляется. Исходя из этого, мы предположили, что условиями способствующими формированию понятия алгоритма могут быть следующие: содействие овладению системой понятий; опора на личный опыт учащихся; систематическое использование схем, таблиц, интерактивных плакатов.

 


Поделиться:

Дата добавления: 2015-08-05; просмотров: 159; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты