Основные технологии программирования
При разработке компьютерных моделей для задач, решаемых по сложным и громоздким алгоритмам, получаются длинные про- граммы, которые очень сложно отлаживать и тестировать. Для облег- чения этих работ были разработаны разные технологии программи- рования, которые упрощают структуру программы и ее отладку. Ос- новные из них:
– модульное программирование;
– программирование «снизу вверх» (восходящее программи- рование);
– программирование «сверху вниз» (нисходящее программи- рование).
Согласно этим технологиям в алгоритме задачи выделяются модули. Модуль – это либо логически законченный фрагмент общей задачи, либо часто повторяющийся блок расчѐтов.
Каждый модуль оформляется по определѐнным правилам в виде подпрограммы, и в текст основного алгоритма вместо него вставляется короткая инструкция вызова подпрограммы. Когда вы- полнение программы доходит до этой инструкции, выполняется фрагмент, заложенный в тело подпрограммы, после чего управление передаѐтся на команду, следующую за инструкцией вызова подпро- граммы.
Различают подпрограммы функции (используются как опе- ранды в выражениях) и процедуры (используются как операторы). Общую структуру подпрограмм можно представить следующим об-
![]() |
разом:
Тело подпрограммы – это операторы, которые программируют
ту часть алгоритма, которая выделена в данный модуль. Формальные параметры – это те переменные в теле подпрограммы, значения ко- торых надо будет перед началом работы этого модуля получить из основной программы.
В инструкции по вызову указывается имя подпрограммы и фактические параметры, то есть значения формальных параметров, с которыми следует выполнить тело подпрограммы в данном месте.
Пример. Дан массив целых чисел {ai},i=1, 2, ..., 15. Программа должна вычислять произведение двух сумм некоторых элементов массива {ai}. Так как операции, которые следует выполнить для сум- мирования, не зависят от конкретных значений используемых чисел, алгоритм суммирования, чтобы не повторять его дважды, можно оформить в виде подпрограммы. Поскольку по условию задачи ко- нечным результатом должно быть произведение сумм, а не каждая из них по отдельности, подпрограмму можно оформить по типу подпро- граммы-функции. Алгоритм, по которому будет составляться про- грамма, представляем в псевдокоде:
Функция СУММА(i1,i2) начало: s = 0
начало цикла для i = i1 до i2 s = s + a(i)
конец цикла СУММА = s
Конец функции
Начало программы
вывести на экран("введите значения массива А") начало цикла для j = 1 до 15
ввести с клавиатуры а(j) конец цикла
вывести на экран ("введите границы индексов первой
суммы") суммы")
ввести с клавиатуры g, w
вывести на экран ("введите границы индексов второй
ввести с клавиатуры t, l
р:= СУММА(g,w) * СУММА(t,l)
вывести на экран ("произведение равно", р)
Конец программы
В программу введены константы: g = 1; w = 12; t = 8; l = 15. Это – фактические параметры, которые надо использовать вместо формальных параметров i1 и i2 при вычислении значения p. В ре- зультате переменная p примет значение произведения сумм элемен- тов с 1 по 12 и с 8 по 15 из массива {ai}.
При использовании технологии «сверху вниз» разработка про- граммы начинается с последовательной детализации алгоритма на
всѐ более мелкие части до тех пор, пока получатся такие модули, для которых можно написать конкретные команды. Затем составляется текст основной программы, в которой вместо фрагментов, выделен- ных в подпрограммы, ставят «заглушки». Это подпрограммы, в кото- рых вместо реально нужных операторов ставят сигнальные печати или ввод результатов, которые должна была сосчитать эта подпро- грамма. Таким образом проверяют и отлаживают последовательность действий в основном алгоритме. Затем подпрограммы-заглушки по очереди заменяют на соответствующие алгоритму подпрограммы, отлаживают и тестируют их. Такая технология облегчает создание программы, уменьшает количество ошибок и облегчает нахождение допущенных ошибок. Считается, что программа оптимального по размерам модуля целиком должна помещаться на экране дисплея.
При использовании технологии «снизу вверх» в первую оче- редь определяются и разрабатываются вспомогательные модули, ко- торые потребуются для проектируемой программы. После того, как все модули отлажены, из них, как из кубиков, в соответствии с на- чальным алгоритмом собирается основная программа.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.