Задать вопрос
17 января, 23:33

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.

+1
Ответы (1)
  1. 18 января, 00:02
    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,' ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы