Что будет напечатано программой? var x, y: char; procedure P(x: integer); const y=false; begin write(x, y) end; begin x:='*'; y:='1'; P(1); write(x, y); end.
Программа, когда будет запущена, напечатает следующие значения:
1 false * 1
Давайте разберемся, почему именно такой результат.
В начале программы объявлены переменные x и y, обе типа char. Затем объявляется процедура P, которая принимает один параметр x типа integer (целое число).
После объявления процедуры идет объявление константы y со значением false (ложь). Значение константы y будет использовано внутри процедуры P.
Далее начинается основная часть программы. Присваиваем переменной x значение '*' и переменной y значение '1'.
Затем вызываем процедуру P, передавая ей значение 1 в качестве аргумента. Внутри процедуры P происходит вывод на печать значения параметра x (1) и значения константы y (false). Обратите внимание, что значения x и y внутри процедуры P никак не связаны с переменными x и y за пределами процедуры P.
После вызова процедуры P, продолжаем выполнение основной части программы и выводим на печать значения переменных x и y. В данном случае значения будут '*' и '1'.
Таким образом, когда программа будет выполнена, будут напечатаны следующие значения:
1 false * 1
Давайте разберемся, почему именно такой результат.
В начале программы объявлены переменные x и y, обе типа char. Затем объявляется процедура P, которая принимает один параметр x типа integer (целое число).
После объявления процедуры идет объявление константы y со значением false (ложь). Значение константы y будет использовано внутри процедуры P.
Далее начинается основная часть программы. Присваиваем переменной x значение '*' и переменной y значение '1'.
Затем вызываем процедуру P, передавая ей значение 1 в качестве аргумента. Внутри процедуры P происходит вывод на печать значения параметра x (1) и значения константы y (false). Обратите внимание, что значения x и y внутри процедуры P никак не связаны с переменными x и y за пределами процедуры P.
После вызова процедуры P, продолжаем выполнение основной части программы и выводим на печать значения переменных x и y. В данном случае значения будут '*' и '1'.
Таким образом, когда программа будет выполнена, будут напечатаны следующие значения:
1 false * 1