Возможно я неточно спросил, имелось ввиду следущее:
Код
var x:integer;
procedure 123( );
begin
x:=12;
end;
begin
x:=10;
123(x);
writeln(x);
end.
Что нужно написать в скобках procedure 123(); чтобы в результате работы программы вывелось 12, а не 10? (Насколько я понял в данном случае необходимо передать параметр по ссылке, но у меня не работала программа, когда в скобках я писал var x:integer;). ( Мне необходимо чтобы одна процедура например заполняла несколько массивов в зависимости от параметров, поэтому использование каких-либо конкретных глобальных переменных неприемлемо =(( )
Код
procedure enter (var arra:arr; n:integer);
var i:integer;
begin
writeln('Введите длину массива');
readln(n);
for i:=1 to n do begin
readln(arra[i]);
end;
end;
В результате работы такой процедуры у меня заполняется массив, но во второй переменной нету длины полученного массива. =(( ( вызов осуществляю вот так: enter(a,na);)