- •Лекция №1. Структура программы на Паскале.
- •Раздел описаний
- •Основные стандартные функции, определенные в Паскале.
- •Стандартные типы переменных и
- •3.Символьный тип.
- •Лекция №2. Разветвляющиеся вычислительные процессы.
- •1. Условного if
- •2.Оператор выбора case
- •Блок – схемы операторов if и case.
- •Лекция №3. Циклические вычислительные процессы (иттерационные).
- •1.Общая форма записи оператора цикла while:
- •2. Общая форма записи repeat.
- •Операторы цикла могут быть вложены один в другой:
- •3. Общая форма записи оператора цикла for.
- •Отличие цикла for от while и repeat.
- •Лекция №4. Массивы.
- •Двумерные массивы.
- •Ввод и вывод двумерного массива.
- •Определение одно- и двумерного массива, как типизированной константы.
- •Типовые алгоритмы обработки массивов.
- •Лекция №5. Процедуры и функции.
- •Функции.
- •Лекция №6. Строковые переменные.
- •Стандартные процедуры и функции для работы со строковыми переменными.
- •Лекция №7. Множества.
- •Формирование множеств.
- •Отношения и операции над множествами.
- •Лекция №8. Записи.
Двумерные массивы.
Общая форма записи:
1. VAR имя массива: ARRAY[нач. знач. интервала строки .. конеч. знач. интервала строки, нач. знач. интервала столбца .. конеч. знач. интервала столбца] OF Базовый тип;
Пример: A2*3
VAR A: ARRAY[1..2, 1..3] OF REAL;
2. TYPEимя типа=ARRAY[нач. знач. интервала строки .. конеч. знач. интервала строки, нач. знач. интервала столбца .. конеч. знач. интервала столбца] OF Базовый тип;
VAR имя массива: имя типа;
Пример: A2*3
TYPE MASS = ARRAY[1..2, 1..3] OF REAL;
VARA:MASS;
Ввод и вывод двумерного массива.
1. Ввод элементов двумерного массива.
READ(N,M);
FOR I:=1 TO N DO
FOR J:=1 TO M DO
BEGIN
WRITE ('A[ ', I, ',', J, ' ]=');
READ(A[ I ,J ]);
END;
2. Ввод элементов двумерного массива.
FOR I:=1 TO N DO
BEGIN
WRITELN;
FOR J:=1 TO M DO
WRITELN (A[ I, J ]);
END;
Определение одно- и двумерного массива, как типизированной константы.
1. TYPE имя типа = ARRAY[н..к] OF базовый тип;
CONST имя массива: имя типа = (список элементов);
Пример: A(1, 2, 3, 4, 5)
TYPE MAS = ARRAY[1..5] OF INTEGER;
CONST A: MAS = (1, 2, 3, 4, 5);
2. TYPE имя типа = ARRAY[н.стр. .. к.стр., н.ст. .. к. ст.] OF базовый тип;
CONST имя массивы: имя типа = ((строка1), (строка2), (строка n));
Пример: TYPE MASS =ARRAY[1..2, 1..2] OF INTEGER;
CONSTA:MASS= ((1, 2), (3, 4));
Типовые алгоритмы обработки массивов.
1.Одномерный.
Нахождение минимального (максимального) элемента массива.
(a1, a2, a3, a4, a5)
MIN:= A[ 1 ]; {MAX:=A[ 1 ]}
FOR I:=1 TO 5 DO
IF MIN > A[ I ] {MAX < A[ I ]} THEN
MIN:= A[ I ]; {MAX:= A[ I ]}
2.Двумерный.
MIN:= A[ 1, 1 ]; {MAX:=A[ 1, 1 ]} STR:=1; STL:=1;
FOR I:=1 TO N DO
FOR J:=1 TO M DO
IF MIN > A[ I, J ] {MAX < A[ I, J ]} THEN
BEGIN
MIN:= A[ I, J ]; STR:=I; STL:=J;
{MAX:= A[ I, J ]; STR:=I; STL:=J}
Вычислить сумму элементов главной диагонали квадратной матрицы.
SUM:=0;
FOR I:=1 TO N DO
SUM:= SUM + A[ I, J ];
Лекция №5. Процедуры и функции.
Подпрограмма – это повторяющаяся группа операторов, оформленная в виде самостоятельной программной единицы, записывается однократно, а в соответствующих местах программы обеспечивается лишь обращение к ней по имени.
Использование подпрограмм позволяет:
Сократить объем программы.
Улучшить структуру (читаемость и наглядность).
уменьшить вероятность ошибок.
облегчить процесс отладки.
В Pascal механизм подпрограмм реализуется в виде процедур и функций.
Процедура – это самостоятельная программная единица, которая выполняется по команде из другой программной единице (процедуре или функции).
Общий вид описания процедуры:
PROCEDURE имя (список формальных параметров);
Раздел описаний; (могут присутствовать все разделы описаний)
BEGIN
Операторная часть;
END;
Формальные параметры – это переменные фиктивно присутствующие в процедуре и определяющие тип и место подстановки фактических параметров над которыми производятся действия.
Все формальные параметры делятся на два вида:
Параметры значения (входные).
параметры переменные (выходные).
Выходные параметры – это те параметры, перед которыми ставится служебное слово VAR, они передаются по ссылке тогда, когда необходимо передать некоторые новые значения в точку вызова процедуры, т.е. когда необходимо что бы изменение в теле процедуры значений формальных параметров приводило к изменению фактических параметров, получающих новые значения.
Параметры значения – перед ними слово VAR не ставится, с помощью них идет передача по значению, т.е. передается только копия значения этих параметров и внутри процедуры с этими параметрами можно выполнять любые действия (допустимые для данного типа) при чем эти изменения не влияют на фактические параметры в программе. Все переменные в программе делятся на локальные и глобальные.
Глобальные переменные– это переменные, которые объявлены в описании основной части программы, а локальные – в процедуре, они существуют только тогда, когда работает процедура, появляются при ее вызове и исчезают при завершении работы.
Результат выполнения процедуры– это одно или несколько значений, которые передаются в основную программу, как значение ее параметра.
При вызове процедуры все формальные параметры заменяются фактическими.
!!! – число и тип формальных и фактических параметров должны совпадать с точностью до их следования.
Пример: Составить программу, которая будет находить AN, где A, N – целые числа, вводимые с клавиатуры. Описать в виде процедуры.
PROCEDURE STEP (A, N: INTEGER; VAR Y: INTEGER);
VARI:INTEGER; {локальная переменная}
BEGIN
Y:=1;
FOR I:=1 TO N DO
Y:=Y*A;
END;
Передается три параметра A,N– параметры значения,Y– параметр переменной. Вызов этой процедуры в основной программе выглядит:
STEP (3, 5, d); или STEP (b, c, d1);