Смекни!
smekni.com

Методические особенности изучения раздела "Алгоритм и исполнители" в базовом школьном курсе информатики (стр. 2 из 6)

5. Понятность. Алгоритм должен быть понятен исполнителю и исполнитель должен быть в состоянии выполнить его команды.

1.2Формы представления алгоритма

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

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

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

Наиболее распространенной формой представления алгоритма является блок-схема.

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

·

Арифметический блок

(операции присваивания)


Блок ввода – вывода

информации

· Условный (логический)

блок - проверка условия

·

Блок начала – конца

алгоритма

·

Соединитель – для соединения

удаленных блоков

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

· В структуре «последовательность» действия выполняются последовательно, сверху вниз, без возвратов (рис. 1, а);

· В структуре «ветвление» выполняется либо одна, либо другая группа действий в зависимости от истинности (выполнения) или ложности (невыполнения) условия (рис. 1, б);

· В структуре «цикл» действия повторяются до тех пор, пока выполняется заданное условие (рис. 1, в).


Рис. 1 – Выполнение заданных условий

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

· линейный;

· ветвящийся;

· циклический.

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

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

Различают полную и неполную форму ветвления.

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

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

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

Основные понятия циклического алгоритма:

1. счетчик цикла – переменная, которая изменяет свое значение при переходе от цикла к циклу;

2. тело цикла – действия, которые повторяются;

3. начальное значение счетчика цикла – значение, от которого начинает изменяться счетчик цикла;

4. конечное значение счетчика цикла – значение, до которого изменяется счетчик цикла;

5. шаг – значение, на которое изменяется счетчик цикла.

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

Вспомогательный алгоритм — это блок последовательных действий в основном алгоритме, который выделен в качестве самостоятельного алгоритма, имеющего свое имя. [3]

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

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

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

1.3 Учебный алгоритмический язык

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

К достоинствам учебного алгоритмического языка относится его простота, а также то, что алгоритм записывается на русском языке при помощи некоторого ограниченного числа слов, смысл и способ употребления которых строго определены. Эти слова называются служебными словами.

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

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

Признаком заголовка алгоритма является ключевое слово алг.

Итак, алгоритм, записанный на учебном алгоритмическом языке, имеет следующую форму:

алгназвание алгоритма

aргсписок исходных данных

резсписок результатов

нач

последовательность команд алгоритма

кон

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

Записывается она так:

<переменная> := <выражение>

Знак «: =» читается «присвоить».

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

1) значение выражения, записанного в правой части команды присваивания, вычисляется с использованием текущих значений всех величин, входящих в это выражение;

2) переменной присваивается новое вычисленное текущее значение. При этом предшествующее значение переменной уничтожается.

Следовательно, команда b: = а + b означает, что к предыдущему текущему значению величины b прибавляется значение переменной а и полученный результат становится новым текущим значением величины b.

Этот пример иллюстрирует три основных свойства присваивания:

1) пока переменной не присвоено значение, она остается не определенной;

2) значение, присвоенное переменной, сохраняется в ней вплоть до выполнения следующего присваивания этой переменной нового значения;

3) новое значение, присвоенное переменной, заменяет ее предыдущее значение.

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

действие 1

действие 2

. . . . . . . . .

действие n

Следующей рассмотрим базовую структуру "ветвление". Она обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран. Структура ветвление существует в четырех основных вариантах:

1. если—то;

еслиусловие

тодействия

все

2. если—то—иначе;

еслиусловие

тодействия 1

иначедействия 2

все

3. выбор

выбор

при условие 1: действия 1

при условие 2: действия 2

. . . . . . . . . . . .

приусловие N: действия N

{иначе действия N+1}

все

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

Цикл типа пока.

Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока.

нц покаусловие

тело цикла

(последовательность действий)

Кц

Цикл типа для

Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне.