Вызов процедуры в процедуре - Free Pascal
Формулировка задачи:
Собственно вопрос: можно ли в процедуре вызвать другую процедуру?
И если можно, то как? У меня не получается.
Это нужно проделать в case. Т. е., приблизительно так:
procedure odin;
begin
...
end;
procedure dva;
begin
case n of
1: r0:=1000;
2: r0:=5000;
3: odin(?!???);
end;
end;Решение задачи: «Вызов процедуры в процедуре»
textual
Листинг программы
var n,x,y,r0:integer;
procedure odin;
begin
r0:=x+y
end;
procedure dva;
begin
case n of
1: r0:=1000;
2: r0:=5000;
else odin;
end;
end;
begin
write('n=');
readln(n);
writeln('x,y');
readln(x,y);
dva;
write('r0=',r0)
end.
Объяснение кода листинга программы
- Объявлены четыре переменные: n, x, y, r0 типа integer (целое число).
- Определены две процедуры: odin и dva.
- В процедуре odin происходит сложение x и y, результат сохраняется в переменной r0.
- В процедуре dva происходит проверка значения переменной n.
- Если n равно 1, то r0 присваивается значение 1000.
- Если n равно 2, то r0 присваивается значение 5000.
- Если n не равно 1 и 2, то вызывается процедура odin.
- Выводится сообщение
n=и считывается значение переменной n. - Выводится сообщение
x,yи считываются значения переменных x и y. - Вызывается процедура dva.
- Выводится сообщение
r0=и значение переменной r0.