1. Какое из следующих описаний процедуры, выводящей строку символов (*), свободно от ошибок:
|
Procedure Stars;
Var s:integer;
Begin
For s:=1 to 78 do
Writeln(‘*’);
End;
|
Procedure Stars;
Var s:integer;
For s:=1 to 78 do
Write(‘*’);
|
Procedure Stars;
Var s:integer;
Begin
For s:=1 to 78 do
Write(‘*’);
End;
|
1. Ниже представлены заголовки процедуры и функции, а также обращения к процедуре и функции.
Procedure Proc(x, y:integer; var z:real);
Function Func1(a, b:integer);
Proc(k, l, m);
H:=Func1(I, j);
Укажите соответствие между представленными ниже наборами параметров этих подпрограмм(слева) и названиями разновидностей параметров(справа).
| a) X, y, a, b
|
| 1.Параметры-переменные
| | b) X, y, z, a, b
| 2.Параметры-значения
| | c) K, l, m, I, j
| 3.Формальные параметры
| | d) z
| 4.Фактические параметры
|
2. Какое определение верно, либо ложно:
| 1.Вложение подпрограмм не допускается.
|
| | 2.После раздела описаний процедуры следует ее тело, содержащее последовательность операторов, заключенных в операторные скобки.
|
| | 3.Передача информации из тела программы в процедуру осуществляется с помощью механизма параметров.
|
| | 4.Имена, объявленные в основной программе, доступны во всех описанных в ней подпрограммах.
|
| | 5. Параметр-значение просто передает некоторое значение в подпрограмму.
|
| | 6. Передача значений из процедуры в программу осуществляется с помощью параметров-переменных.
|
| | 7. В Turbo Pascal наличие в теле подпрограммы оператора вызова самой себя не допускается.
|
|
4. Напишите, что выведет на экран следующая программа:
Program V1_Z1;
Var A,B: Integer;
Procedure F1 (X,Y:Integer);
Begin
Y:=2*X+3;
End;
Procedure F2 (Var X,Y:Integer);
Begin
Y:=3*X+1;
End;
Begin
A:=1;
B:=3;
F1(A,B);
WriteLn('A=',A,'B=',B);
F2(A,B);
WriteLn('A=',A,'B=',B);
End.
5. Напишите, что напечатает следующие программы:
|