Задать вопрос
25 декабря, 17:32

Var a, b: integer;

procendure proc (var a: integer; b: integer)

begin b:=4; а:=6; b:=а+b; end;

begin a:=2; b:=3; proc (a, b) ; writeln (a,' ', b) ; end.

+5
Ответы (1)
  1. 25 декабря, 18:39
    0
    Прежде всего, код надо отформатировать и исправить имеющиеся в нем ошибки. А затем приступать к его рассмотрению.

    var

    a, b: integer;

    procedure proc (var a: integer; b: integer) ;

    begin

    b : = 4; a : = 6; b : = a + b

    end;

    begin

    a : = 2; b : = 3;

    proc (a, b) ;

    Writeln (a, ' ', b)

    end.

    Описаны две целочисленные переменные a и b. Им присваиваются значения 2 и 3 соответственно. Затем следует вызов процедуры proc, в которую эти переменные передаются в качестве параметров.

    На входе в proc получаем a=2, b=3. Далее b получает значение 4, а получает значение 6 и затем b получает значение суммы a+b, т. е. 4+6=10. На этом работа процедуры завершается. Поскольку параметр процедуры a имеет описатель var, то в основную программу вернется значение, которое a имело внутри процедуры (т. е. 6). Значение b=10 действует только внутри процедуры и в основную программу не вернется.

    Следовательно, в основной программа значение а поменяется на 6, а значение b сохранится прежним (3).

    В результате на выходе будет строка:

    6 3
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Var a, b: integer; procendure proc (var a: integer; b: integer) begin b:=4; а:=6; b:=а+b; end; begin a:=2; b:=3; proc (a, b) ; writeln (a,' ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике