
DELPHI 7
.pdf
vk.com/club152685050 | vk.com/id446425943
Вычисление площади треугольника по формуле Герона
procedure Str(x,y,z:real;var S:real); var p:real;
begin p:=(x+y+z)/2;
S:=sqrt(p*(p-x)*(p-y)*(p-z));
end;
15

vk.com/club152685050 | vk.com/id446425943
Структура функции
Function Имя_функции(список параметров):тип;
Разделы описания типов, констант, переменных, процедур, функций, меток
begin
Раздел операторов
Имя_функции:= <...>;
или result:= <...>;
end;
16

vk.com/club152685050 | vk.com/id446425943
Возвращение результата из функции
- через имя функции
Function sum (a,b: integer): integer;
Begin
sum := a+b;
End;
17

vk.com/club152685050 | vk.com/id446425943
Возвращение результата из функции
- через локальную переменную result
Function sum (a,b: integer): integer;
Begin
result := a+b;
End;
18

vk.com/club152685050 | vk.com/id446425943
Вычисление площади треугольника по формуле Герона
function S_tr(x,y,z:real):real; var p: real;
begin p:=(x+y+z)/2;
S_tr:=sqrt(p*(p-x)*(p-y)*(p-z));
end;
19

vk.com/club152685050 | vk.com/id446425943
Блок-схема подпрограммы-функции поиска максимального из двух чисел
f_max(p1,p2)
true |
false |
p1>p2
f_max=p1; |
|
f_max=p2; |
|
|
|
возврат
20

vk.com/club152685050 | vk.com/id446425943
функция поиска максимального из двух чисел
function f_max(p1,p2:real):real; begin
if p1>p2 then f_max:=p1 else f_max:=p2;
end;
21

vk.com/club152685050 | vk.com/id446425943
Вызов подпрограммы и передача параметров
При вызове подпрограммы, устанавливается связь между списками фактических и формальных параметров, т.е. переменным, указанным, в списке формальных параметров, присваиваются значения, указанные в списке фактических параметров.
22

vk.com/club152685050 | vk.com/id446425943
Фактические параметры
Подставляются при вызове процедуры или функции
Str(5,7,9,S); S1:= S_tr(3,4,5);
Фактический параметр может быть константой или выражением.
S1:= S_tr(3*a,4-b,5);
23

vk.com/club152685050 | vk.com/id446425943
Формальные параметры
procedure Str(x,y,z:real;var S:real);
список формальных параметров
function S_tr(x,y,z:real):real; function f_max(p1,p2:real):real;
Формальные параметры описываются в заголовке подпрограммы сразу после ее имени.
24