Что выведет следующая программа? объясните результат. program test; var a,b: integer; procedure p (var x: integer; y: integer); begin x: =x+1; y: =x+y; end; begin a: =1; b: =2; p(a,b); writeln(a,’ ‘,b); p(a,b); writeln(a,’ ‘,b); readln; end. ⦁1 2 1 2 ⦁2 4 3 7 ⦁1 4 1 6 ⦁2 2 3 2 ⦁нет правильного ответа
296
369
Ответы на вопрос:
Выведет ⦁2 2 3 2 сначала переменная а=1 и b =2 вызов процедуры p(a,b) к а добавит 1 и а станет = 2, перед b в заголовке процедуры не стоит var, поэтому данная переменная является параметром-значением и передается по значению, т.е. значение у b всегда остается 2. после writeln(a,’ ‘,b); на экране выведется 2 2повторный вызов процедуры p(a,b) к а добавит 1 и а станет = 3, а значение b при выводе вне процедуры по-прежнему останется 2получим : 3 2
Популярно: Информатика
-
Helokiti234327.03.2022 21:47
-
vhjklv17.06.2020 10:08
-
gora1511v09.06.2020 18:23
-
radmirhik270629.12.2022 15:20
-
grrra108.05.2023 00:19
-
yuliandra06.03.2022 01:19
-
RAMINA190327.02.2023 07:48
-
Arisha22407.09.2022 12:04
-
Lelechk30.11.2021 22:33
-
pupsik10101013.04.2023 05:14