Процедуры без параметров

 

Заголовок процедуры без параметров можно описать в виде:

Вызываются же такие процедуры путем написания в основной программе имени этой процедуры. В виде процедуры без параметров оформляются такие подзадачи, у которых нет входных и выходных данных, или же эти данные удобнее передавать с помощью операторов присваивания, READ и WRITE.

Рассмотрим несколько примеров, в которых представлены эти варианты.

 

Пример 1. Нарисовать три вертикальных квадрата 3х3 с помощью символа "*".

Очевидно, что в этой программе надо выделить рисование квадрата в виде процедуры без параметров, а затем трижды вызвать ее в основной программе:

 

program RISUNOK;

procedure KVADRAT;

begin

writeln('***');

writeln('* *');

writeln('***');

end;

begin

clrscr; KVADRAT;

writeln; KVADRAT;

writeln; KVADRAT;

end.

 

Пример 2. Вычислить площадь четырехугольника ABCD

Зная длины сторон четырехугольника и длину одной из его диагоналей, например BD, можно найти по формуле Герона площади двух вспомогательных треугольников и сложить их. Отсюда следует, что в программе надо выделить процедуру вычисления площади треугольника:

 

program PLOCHAD_1;

var AB,BC,CD,AD,BD,S1,S,a,b,c,p:real;

procedure GERON_1;

begin

p:=(a+b+c)/2;

S:=sqrt(p*(p-a)*(p-b)*(p-c));

end;

begin {*ОСНОВНАЯ ПРОГРАММА*}

read (AB,BC,CD,AD,AC);

a:=AB;b:=AD;c:=BD; GERON_1; S1:= S;

a:=BC;b:=CD;c:=BD; GERON_1; S1:= S1+S;

write(S1);

end.