- •Тема 1. Технология программирования. Основные понятия и подходы
- •1.1 Технология программирования и основные этапы ее развития
- •1.1 Проблемы разработки сложных программных систем (пс)
- •1.2 Блочно-иерархический подход к созданию сложных систем (сс)
- •1.4 Жизненный цикл и этапы разработки программного обеспечения
- •1.5 Оценка качества процессов создания программного обеспечения
- •Тема 2. Основы теории программирования
- •2.1 Понятие технологичности программного обеспечения
- •Диалоговые программы
- •2.2 Модули и их свойства
- •2.3 Основные понятия программирования. Средства описания структурных алгоритмов
- •Описание алгоритма с помощью естественного языка
- •Описание алгоритма с помощью блок-схемы
- •Описание алгоритма с помощью алгоритмических языков
- •2.4 Стиль оформления программы
- •Тема 3. Программирование на языке высокого уровня Pascal
- •3.1 Введение
- •3.2 Основные понятия языка Pascal
- •3.3 Операторы ввода-вывода данных
- •Простые типы данных
- •Структурированные типы данных
- •Работа с текстовыми файлами
- •Другие типы данных
- •3.5 Выражения, операнды, операции
- •Порядок вычисления выражений
- •3.5 Выражения, операнды, операции
- •Порядок вычисления выражений
- •3.6 Операторы языка Простые операторы
- •Структурные операторы
- •Работа с массивами
- •3.6 Подпрограммы
- •Процедуры
- •Функции
- •Рекурсивные подпрограммы
- •Параметры и аргументы
- •Стандартные процедуры и функции
- •3.7 Списки: основные виды и способы реализации
- •Вопросы для экзамена по курсу «Технология программирования»
- •1. Технология программирования и основные этапы ее развития
- •Задания для студентов заочной формы обучения по курсу «Технология программирования (ТеПр)»
- •Вопросы для экзамена по курсу «Технология программирования»
- •1. Технология программирования и основные этапы ее развития
Работа с массивами
Элементы массива располагаются в памяти последовательно. Многомерные массивы располагаются так, что самый правый индекс возрастает самым первым. Индексированные элементы массива называют индексированными переменными. Как правило, операции над массивами – это операции над их элементами. Например, чтобы ввести матрицу A размером 3x4 (3 строки, 4 столбца), можно воспользоваться следующей последовательностью операторов:
for i:=1 to 3 do
for j:=1 to 4 do read(a[i, j]);
При этом значения элементов надо вводить через пробел в следующем порядке: a[1,1], a[1,2], a[1,3], a[1,4], a[2,1],…, a [3,4]. Можно вводить и выводить значения отдельных элементов, а не всего массива, например, read (a [2,3]);
Иногда требуется осуществить поиск в массиве элементов, удовлетворяющих некоторым условиям. Например, пусть надо выяснить, сколько элементов массива A имеют нулевое значение. С этой целью вводят вспомогательную переменную k и используют операторы for и if :
k:=0; for i:=1 to 5 do if a[i]=0 then k:=k+1;
После выполнения цикла значение переменной k будет равно числу элементов массива A с нулевым значением.
Перестановку значений элементов массива также осуществляют с помощью вспомогательной переменной. Пусть, например, надо поменять значения 1-го и 5-го элементов одномерного массива A. Введем вспомогательную переменную того же типа, что и элементы массива A, а затем воспользуемся следующими операторами;
c:=a[5]; a[5]:=a[1]; a[1]:=c;
Пусть
Задание 12. Составить программу, которая: вводит с клавиатуры A в виде матрицы; вычисляет и выводит на экран сумму элементов 2-ой строки матрицы A; строит матрицу B по формуле: bij = aij +1 для всех i, j и выводит B на экран в виде матрицы.
Задание 13. Составить программу, которая: вводит с клавиатуры A в виде матрицы и выводит на экран сумму всех четных элементов этой матрицы; строит матрицу C по формуле: { c1j = a3j , c2j = a2j +10, c3j = - a1j } и выводит ее на экран в виде матрицы.
Задание 14. Составить программу, которая: вводит с клавиатуры A в виде матрицы; строит матрицу C по формуле: dij = sin aij , для всех i, j и выводит ее на экран в виде матрицы; определяет, сколько элементов dij >0,1; выводит на экран эти элементы и их количество.
Задание 15. Составить программу, которая: вводит с клавиатуры A в виде матрицы; меняет местами 1-й и 4-й столбцы и выводит полученную матрицу на экран.
3.6 Подпрограммы
Подпрограмма – это логически законченная и специальным образом оформленная группа операторов, имеющая имя. Подпрограмму можно вызывать неограниченное число раз из различных частей программы. Использование подпрограмм позволяет улучшить структуру программы и сократить ее размер.
По структуре подпрограмма почти полностью аналогична программе. Она тоже содержит заголовок и блок, однако в блоке подпрограммы отсутствует раздел подключения модулей. Кроме того, заголовок подпрограммы по своему оформлению отличается от заголовка программы.
Работа с подпрограммой включает два основных этапа:
описание подпрограммы;
вызов подпрограммы.
Любая подпрограмма должна быть предварительно описана, после чего до пускается ее вызов. При описании под программы задаются ее имя, список параметров и дейст вия, выполняемые подпрограммой. При вызове подпрограммы указывают имя подпрограммы и список аргументов ( фактиче ских параметров), передаваемых подпрограмме для работы.
В различных модулях Delphi имеется много стандартных подпрограмм, которые можно вызывать без предварительного описания. Некоторые из них приведены при описании типов данных и выражений. Кроме того, программист может создавать свои подпрограммы, которые называются пользовательскими .
Подпрограммы делятся на процедуры и функции, имеющие много общего. Основное различие между нимизаключается в том, что функция может под своим именем возвращать значение в качестве результата, поэтому ее можно использовать как операнд выражения.
С подпрограммой взаимодействие может осуществляться по управлению и по данным. Взаимодействие по управлению– это передача управления из программы в подпрограмму и организация возврата в программу. Взаимодействие по данным заключается в передаче подпрограмме данных, над которыми она выполняет определенные действия. Такое взаимодействие может осуществляться следующими основными способами:
с использованием файлов;
с помощью глобальных переменных;
с помощью параметров.
Наиболее часто применяется последний способ. При этом различают параметры и аргументы. Параметры(формальные параметры) являются элементами подпрограммы и используются при описании алгоритма, выполняемого подпрограммой.
Аргументы (фактические параметры) являются элементами вызывающей программы. Они замещают параметры при вызове подпрограммы. При этом осуществляется проверка на соответствие типов и количества параметров и аргументов. Имена параметров и аргументов могут различаться, однако их количество и порядок следования должны совпадать, а типы параметров и соответствующих им аргументов должны быть совместимыми.
Для прекращения работы подпрограммы можно использовать процедуру Exit, которая прерывает выполнение операторов подпрограммы и возвращает управление вызывающей программе.
Подпрограммы можно вызывать не только из программы, но и из других подпрограмм.
