Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_2 семестр / 2-VBA / VBA-Учебные материалы / СидороваЕ.А.,СтупаковС.А.-Основы алгоритмизации.doc
Скачиваний:
92
Добавлен:
10.04.2015
Размер:
430.59 Кб
Скачать

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

Линейный тип алгоритма характеризуется последовательным (сверху вниз) выполнением действий.

Пример 1. Выполнить сложение двух чисел.

Обозначим исходные числа как a и b, их сумму – S, тогда алгоритм решения этой задачи может быть следующим.

1. Ввести числа a и b.

2. Сложить введенные числа (вычислить S = a + b).

3. Вывести результат.

Псевдокод ГСА

АЛГ сложение двух чисел

НАЧ

Ввод a, b

Вычисление S := a + b

Вывод S

КОН

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

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

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

Различают сокращенную (если – то) и полную (если – то – иначе) форму разветвления.

4.1. Сокращенная форма разветвления

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

Псевдокод ГСА

ЕСЛИ условие ТО

Действие 1

// Конец разветвления

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

4.2. Полная форма разветвления

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

Псевдокод ГСА

ЕСЛИ условие ТО

Действие 1 // ветвь 1

ИНАЧЕ

Действие 2 // ветвь 2

// Конец разветвления

Если результатом проверки условия является истина, то выполняется действие 1. В случае невыполнения условия выполняется действие 2 (действие 1 не выполняется).

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

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

Алгоритм решения задачи может быть следующим.

1. Ввести два числа – a и b.

2. Проверить выполнение условия a > b.

3. Если результат проверки истина (да), то вывести а. В противном случае (т. е. результат проверки ложь) – вывести b.

Псевдокод ГСА

АЛГ вывод максимума

НАЧ

Ввод a, b

ЕСЛИ a > b ТО

Вывод а // ветвь 1

ИНАЧЕ

Вывод b // ветвь 2

// Конец разветвления

КОН

4.3. Задания

Выбрать в ГСА соответствии с вариантом из табл. 2 – 4 и выполнить действия:

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

2) для заданий части В подобрать значения переменных и операцию отношения (больше, меньше, равно и т. п.), приводящие к указанному в ГСА результату, в случаях, если

– условие выполняется;

– условие не выполняется.

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

Таблица 2

Разветвляющийся алгоритм (сокращенная форма разветвления)

Часть А

Часть В

1

2

Вариант 1А

Вариант 1В

Вариант 2А

Вариант 2В

Окончание табл. 2

1

2

Вариант 3А

Вариант 3В

Таблица 3

Разветвляющийся алгоритм (полная форма разветвления)

Часть А

Часть В

1

2

Вариант 1А

Вариант 1В

Окончание табл. 3

1

2

Вариант 2А

Вариант 2В

Вариант 3А

Вариант 3В

Таблица 4

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

Часть А

Часть В

1

2

Вариант 1А

Вариант 1В

Вариант 2А

Вариант 2В

Окончание табл. 4

1

2

Вариант 3А

Вариант 3В