Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по информатике.doc
Скачиваний:
468
Добавлен:
17.03.2015
Размер:
3.59 Mб
Скачать

18. Способы описания алгоритмов. Основы графического способа.

Алгоритмы можно записывать не только при помощи слов. В настоящее время различают несколько способов описания алгоритмов:

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

Например: Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел. Алгоритм может быть следующим: задать два числа; если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма; определить большее из чисел; заменить большее из чисел разностью большего и меньшего из чисел; повторить алгоритм с шага

2. Формульно-словесный, аналогично пункту 1, плюс параллельная демонстрация используемых формул.

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

3. Графический, т.е. с помощью блок-схем.

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

При выполнении схем соблюдают следующие правила:

Все блоки в схеме нумеруются положительными целыми числами.

Соединительные линии не должны пересекаться между собой

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

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

Программный, т.е. тексты на языках программирования.

19. Структуры алгоритмов. Основные виды вычислительных процессов. Примеры.

Все многообразие сложных алгоритмов строится всего лишь из трех основных видов вычислительных процессов (им соответсвуют типовые структуры алгоритмов):

Линейный (линейная структура алгоритма).

Разветвленный (разветвленная структура алгоритма).

Циклический (циклическая структура алгоритма).

Линейный вычислительный процесс предполагает выполнение одной и той же последовательности действий при любых допустимых исходных данных.

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

Циклический вычислительный процесс предполагает неоднократное выполнение одной и той же последовательности действий для заданного набора исходных данных. Повторяющаяся цепочка действий называется тело цикла. Существует 2 вида циклических процессов: арифметический и цикл по условию.

Арифметический — цикл с изменяемым параметром или цикл с явно заданным числом повторений. Для организации такого цикла в алгоритм вводят специальную переменную (параметр цикла, счетчик), которая изменяет свое значение при каждом выполнении тела цикла от начального до конечного с заданным шагом.

Циклы по условию — число повторений заранее не известно. Управляются с помощью заданного условия. В зависимости от месторасположения условия (до или после тела цикла) существует две разновидности — цикл с предусловием и цикл с постусловием.

Цикл с постусловием — тело цикла выполняется всегда хотя бы один раз.

Циклические вычислительные процессы позволяют создавать компактные алгоритмы и программы.

Линейный алгоритм

Разветвляющийся алгоритм

Циклический алгоритм