- •Билет 1
- •Билет 2
- •Билет 3
- •Билет 4
- •2) В отличие от оператора if, оператор case позволяет выбрать и выполнить один оператор не из двух, а из нескольких операторов. В общем случае оператор case может быть записан следующим образом:
- •Билет 5
- •Билет 6
- •Билет 7
- •Билет 8
- •Билет 9
- •Билет 10
- •Билет 11
- •Билет 12
- •Билет 13
- •Билет 14
- •Билет 15
- •Билет 16
- •Билет 17
- •Билет 18
- •Билет 19
- •2) Выражения различают по типу их результата: целые, вещественные, символьные, логические, строковые и т.Д. Выражения, имеющие результат целого и вещественного типа, называются арифметическими.
- •Билет 20
- •Билет 21
- •Билет 22
- •2)Оператор repeat имеет следующий формат:
- •Билет 23
- •2) В Pascal имеются две основных процедуры ввода read и readln, которые используются для чтения данных, вводимых с клавиатуры. Формат этих процедур таков:
- •Билет 24
- •Билет 25
- •Билет 26
2) В отличие от оператора if, оператор case позволяет выбрать и выполнить один оператор не из двух, а из нескольких операторов. В общем случае оператор case может быть записан следующим образом:
case < выражение > of
< список _меток_1 > : < оператор1 >;
< список _меток_2 > : < оператор2 >;
< список _меток_n > : < операторn >;
else
< оператор > end;
В приведенном формате оператора < выражение > - это выражение порядкового типа, определяющее дальнейший ход выполнения программы. Использование порядкового типа означает, что нельзя использовать выражения, возвращающие действительные числа или строки. Список меток представляет собой список констант, разделенных запятыми. Если константы представляют диапазон чисел, то вместо списка можно указать первую и последнюю константы диапазона, разделенные двумя точками. Например, список 1,2,3,4 можно записать как 1..4. Выполняется оператор case следующим образом. В начале вычисляется значение выражения, следующего за словом case. Далее полученное значение последовательно сравнивается с константами из списков меток, стоящих перед двоеточиями. Если значение выражения совпадает с константой из какого-либо списка меток, то выполняется соответствующий этому списку меток оператор. На этом выполнение оператора case завершается. Заметим, что в качестве оператора может быть использован и составной оператор. Если значение выражения не совпадает ни с одной константой из всех списков меток, то выполняется оператор, стоящий за зарезервированным словом else. Раздел else не обязательно должен присутствовать в операторе case. Если он отсутствует, и значение выражения не совпало ни с одной константой из списков меток, то ни один оператор не будет выполнен.
Билет 5
Встроенные процедуры и функции с вещественными аргументами.
Передача процедурам (функциям) имени другой процедуры (функции) в качестве параметра.
1)
2) Процедурные типы. Основное назначение процедурных типов - дать программисту гибкие средства передачи функций и процедур в качестве фактических параметров обращения к другим процедурам и функциям. Оказывается, что процедуры и функции тоже являются данными и, следовательно, в программе могут существовать переменные процедурных типов. Переменным процедурных типов в качестве значений присваиваются имена соответствующих подпрограмм. Этот подход широко используется в Object Pascal, особенно при использовании классов. При создании консольных приложений процедурный тип используется для передачи процедур и функций в качестве параметров из вызывающей программы в вызываемую подпрограмму. Существуют два процедурных типа: тип-процедура и тип-функция. Для объявления процедурного типа используется заголовок процедуры (функции), в котором опускается ее имя
type < имя процедурного типа >= < заголовок процедуры или функции без имени >; Передаваемые подпрограммы не могут быть локальными, т. е. процедурами или функциями, объявленными внутри другой подпрограммы. Переменным процедурных типов допускается присваивать в качестве значений имена соответствующих подпрограмм. После такого присваивания имя переменной становится синонимом имени подпрограммы.
type
funс1 = function (a,b:real):real;
func2 = function {const x:integer):char;
p1 = procedure (x,y:integer; var z:real);
p2 = procedure;
В программе могут быть объявлены переменные процедурных типов, например, так:
var
pr : pl;
fl, f2 : func2;
