- •Вопрос1
- •Понятие информации, виды информации. Ее свойства
- •Что можно делать с информацией
- •Свойства информации
- •Основные сведения о компьютерах
- •Что такое компьютеры?
- •Типы компьютеров
- •Настольные компьютеры
- •Переносной компьютер
- •Карманные компьютеры
- •Планшетные пк
- •1 Общая структура эвм
- •1. Микропроцессор
- •2. Внутренняя память
- •5. Монитор
- •Единицы измерения информации.
- •1.3. Алгоритмы линейной структуры
- •1.4. Алгоритмы разветвленной структуры
- •3.1.2 Условный оператор
- •2.1. Алгоритмы циклической структуры
- •Вопрос 15
- •Вложенные циклы
- •Ввод массива Паскаля
- •Вывод массива Паскаля
- •Двумерные массивы Паскаля – матрицы
- •Описание двумерного массива Паскаля.
- •Основные действия с двумерными массивами Паскаля
- •Ввод двумерного массива Паскаля.
- •Вывод двумерного массива Паскаля на экран.
- •Метод "пузырька"
- •Сортировка вставками
- •Сортировка посредством выбора
- •Объединение разнородных элементов (Запись)
- •Операции над записями Паскаля (это важно!)
- •Общая структура подпрограммы
- •Параметры подпрограмм
- •Открытые параметры-массивы
- •Типы файлов Турбо Паскаль
Операции над записями Паскаля (это важно!)
Единственная операция, которую можно произвести над однотипными записями Паскаля – это присваивание.
Все другие операции производятся над отдельными полями записи
Вопрос №24
Подпрограммы. Процедуры . Функции
Общая структура подпрограммы
Подпрограмма это часть программы, оформленная в виде отдельной синтаксической конструкции и снабженная именем. "Вызов" подпрограммы, т.е. выполнение действий, заданных в подпрограмме в виде операторв, может быть произведен в некоторой точке программы посредством указания имени этой подпрограммы. Кроме задания последовательности действий, любая подпрограмма может содержать описание некоторой совокупности локальных объектов - констант, типов, переменных и т.д. Эти объекты предназначены для организации действий внутри подпрограммы и имеют смысл (т.е. доступны или видимы) только внутри данной подпрограммы [1].
Механизм подпрограмм в языке Турбо Паскаль реализован в виде процедур и функций. Они имеют почти одинаковую структуру, один и тот же смысл, но различаются назначением и способом вызова.
Процедуры служат для задания последовательности действий, направленных на изменение внешней по отношению к ним программной обстановки. Примерами такого изменения являются определение значений новых пременных, запись информации во внешний файл и т.п. Вызов процедуры осуществляется указанием ее имени в том месте программы, где предполагается выполнение операторов, заданных в процедуре.
Функции служат, прежде всего, для определения алгоритма вычисления некоторого значения (простого типа). В этом отношении функции подобны выражениям, которые также вычисляют значение. В соответствии с этим вызов функции является одним из допустимых операндов выражения, обозначая в нем то значение, которое вычисляет ("возвращает") функция.
Описание процедуры:
PROCEDURE ИмяПроцедуры ( СписокФормальныхПараметров ); LABEL Перечисление меток внутри тела процедуры CONST Описание локальных констант TYPE Описание локальных типов VAR Описание локальных переменных BEGIN Тело процедуры END.
Пример описания и вызова процедуры:
PROGRAM Example_of_Procedure; USES CRT;
PROCEDURE ChangeColor( C1, C2 : Word ); BEGIN TextColor(C1); TextBackGround(C2) END; BEGIN ChangeColor( Yellow, Blue ); { Вызов процедуры } ClrScr; { Ощичаем экран } ... ... END.
Описание функции:
FUNCTION ИмяФункции ( СписокФормальныхПараметров ) : ТипЗначения; LABEL Перечисление меток внутри тела процедуры CONST Описание локальных констант TYPE Описание локальных типов VAR Описание локальных переменных BEGIN Вычисление значения функции; ИмяФункции := ВычисленноеЗначение END.
Для присвоения функции вычисленного значения ее имя должно хотя бы раз появиться в левой части оператора присванивания в теле самой функции (ИмяФункции := ВычисленноеЗначение).
Пример описания и вызова функции:
PROGRAM Example_of_Function; USES CRT; VAR a : Integer;
FUNCTION Factorial( n : Integer ) : LongInt; VAR F : LongInt; k : Integer; BEGIN F:=1; for k:=1 to n do F:=F*k; Factorial := F END; BEGIN ClrScr; Write('Введите целое число a: '); ReadLn(a); Writeln('Факториал а = ', Factorial(a) ); ReadLn; END.
