Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОАиП 2012-13 ПР1 Составление блок схем.doc
Скачиваний:
9
Добавлен:
25.11.2019
Размер:
2.93 Mб
Скачать

3.4 Базовые алгоритмические структуры

Блок- схема

Описание структуры

естественным языком

Алгоритмическая структура ветвление (полная структура)

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

Алгоритмическая структура ветвление (усеченная структура)

Вначале проверяется условие и если выполняется условие выполняется серия команд1, а если нет- переход к следующей алгоритмической структуре. Другими словами при невыполнении условия никаких действий не происходит

Алгоритмическая структура «цикл» (с пред условием или «ПОКА»)

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

Алгоритмическая структура «цикл» (с пост условием или «ДО»)

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

Алгоритмическая структура «цикл» (с параметром или «ДЛЯ»)

Имеется какой-то параметр (переменная) в нашем случае это i, который изменяет своё значение от начального значения(iн) до конечного значения(iк) с определённым шагом. При каждом изменении параметра происходит выполнение тела цикла.

Цикл по возрастающему параметру:

iн < iк шаг равен 1

Как только параметр превысит iк , будет выполнен выход из цикла.

Цикл по убывающему параметру:

iн > iк шаг равен –1

Как только параметр станет меньше iк , будет выполнен выход из цикла.

3.5 Рекомендации по выполнению работы

Рассмотрим этапы решения задачи на ЭВМ на примере.

ПРИМЕР 1

Условие задачи:

Вычислите на ЭВМ значения функции S, если

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

Определим исходные данные и результат для нашей программы, их тип данных:

Входные данные: a, t – вещественные значения, так как произведение должно сравниваться с единицей (at>1, at<1, at=1), b- может быть как целым значением, так и вещественным (в нашем случае оно ни на что не влияет). Эти данные вводятся с клавиатуры.

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

Рассмотрим особый случай для нашего примера. При вычислении

S= At/b, если пользователь введет с клавиатуры b=0, нарушится математическое правило: «делить на ноль нельзя». Поэтому для разработки нашего алгоритма это необходимо учесть.

  1. Математическое или информационное моделирование. Этот этап создает математическую модель решаемой за­дачи, которая может быть реализована на компьютере. Данный этап очень тесно связан с первым, и выделять его имеет смысл только в том случае, когда нет единого ме­тода решения.

Д ля примера мы постараемся его рассмотреть. для вычисления S используются формулы, а по какой формуле вычислять зависит от условий (at>1, at<1, at=1). Представим это наглядно:

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

  1. Р азработка или выбор алгоритма. Здесь необходимо опре­делить последовательность действий, которые надо вы­полнить для получения результата. А так же на этом этапе разработаем систему тестов для проверки разработанного алгоритма, чтоб исключить логические ошибки.

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

  1. а=1,0, b=1, t=0,5 тогда s=1,5;

  2. а=1,0, b=1, t=1,0 тогда s=0,5403;

  3. а=2,0, b=1, t=1,0 тогда s= 2.

Вычисленные значения следует сравнить со значениями, вычисленными на ЭВМ.

Следующие этапы: Программирование; Ввод программы и исходных данных в ЭВМ; Тестирование и отладка программы; Исполнение отлаженной программы и анализ результа­тов, будем рассматривать после изучения языка Паскаль.

ПРИМЕР 2

Начав тренировки, лыжник в первый день пробежал 10 км. Каждый следующий день он увеличивал пробег на 10 % от пробега предыдущего дня. Определить в какой день он пробежит больше 20 км.

Д

1

ано:

S 1=10км, n=1день

S2= S1+ S1*0.1

S3= S2+ S2*0.1

S4= S3+ S3*0.1

….

Sn= Sn-1+ Sn-1*0.1

Найти:

n когда Sn>20

Тестирование:

В 1 день спортсмен пробежит 10км

В 2 день спортсмен пробежит 11км

В 3 день спортсмен пробежит 12,1км

В 4 день спортсмен пробежит 13,31км

В 5 день спортсмен пробежит 14,64км

В 6 день спортсмен пробежит 16,11км

В 7 день спортсмен пробежит 17,72км

В 8 день спортсмен пробежит 19,49км

В 9 день спортсмен пробежит 21,44км

21,44>20 значит, на экран будет выведено:

21,44 км пробежал в 9 день

Вычисленные значения следует сравнить со значениями, вычисленными на ЭВМ.