Вызов процедуры в процедуре - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Собственно вопрос: можно ли в процедуре вызвать другую процедуру? И если можно, то как? У меня не получается. Это нужно проделать в case. Т. е., приблизительно так:
Листинг программы
  1. procedure odin;
  2. begin
  3. ...
  4. end;
  5. procedure dva;
  6. begin
  7. case n of
  8. 1: r0:=1000;
  9. 2: r0:=5000;
  10. 3: odin(?!???);
  11. end;
  12. end;

Решение задачи: «Вызов процедуры в процедуре»

textual
Листинг программы
  1. var n,x,y,r0:integer;
  2. procedure odin;
  3.   begin
  4.   r0:=x+y
  5.   end;
  6.  
  7. procedure dva;
  8.   begin
  9.     case n of
  10.       1: r0:=1000;
  11.       2: r0:=5000;
  12.       else odin;
  13.     end;
  14.  end;
  15.  
  16. begin
  17. write('n=');
  18. readln(n);
  19. writeln('x,y');
  20. readln(x,y);
  21. dva;
  22. write('r0=',r0)
  23. end.

Объяснение кода листинга программы

  1. Объявлены четыре переменные: n, x, y, r0 типа integer (целое число).
  2. Определены две процедуры: odin и dva.
  3. В процедуре odin происходит сложение x и y, результат сохраняется в переменной r0.
  4. В процедуре dva происходит проверка значения переменной n.
  5. Если n равно 1, то r0 присваивается значение 1000.
  6. Если n равно 2, то r0 присваивается значение 5000.
  7. Если n не равно 1 и 2, то вызывается процедура odin.
  8. Выводится сообщение n= и считывается значение переменной n.
  9. Выводится сообщение x,y и считываются значения переменных x и y.
  10. Вызывается процедура dva.
  11. Выводится сообщение r0= и значение переменной r0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы