Глобальные и локальные переменные

При использовании пользовательских процедур или функций все переменные, используемые в программе делятся на:

ü глобальные – описанные в основной программе («видны» и в основной программе и в процедуре (функции)),

ü локальные – описанные в процедуре или функции («живут» только во время работы процедуры или функции).

! На начальном этапе использования пользовательских процедур в программе рекомендуется использовать различные имена переменных в процедуре и основной программе.

Пример 2: Дано предложение. Вводится 5 символов. Заменить каждый символ на подчеркивание и рассчитать количество его повторов в предложении. Использовать одну процедуру для подсчета количества символов и замены.

program primer2;

var s:string;

t:char;

k,i:integer;

procedure Z (f:char; var st:string; var n:integer);

var i:integer;

begin

n:=0;

for i:=1 to length(st) do

if st[i]=f then n:=n+1;

for i:=1 to length(st) do

if st[i]=f then st[i]:='_';

end;

 

BEGIN

write('Исходное предложение: ');

readln(s);

for i:=1 to 5 do

begin

write('Введите символ: ');

readln(t);

Z (t,s,k);

writeln('Символ ',t,' повторяется ',k,' раз.');

end;

writeln('Получившееся предложение: ',s);

END.

В скобках указываются те параметры, которые должны передаваться из основной программы в процедуру (без слова var) и те параметры, которые возвращаются процедурой (задаются или изменяются внутри процедуры – после слова var). Например, для подсчета количества символов и их замены, необходим исходный параметр типа char, изменяемый параметр (строка – string) и изменяемый параметр для вывода количества повторов (integer). Имя тех переменных, которыми они будут обозначаться внутри процедуры и их тип указываются сразу после названия процедуры в скобках (перед изменяемыми параметрами ставится var).

Процедуру можно сравнить с отдельной программой, набранной в тексте основной, поэтому она использует свои переменные и даже если они совпадают по названию с описанными в основной программе, все равно процедура использует только свои собственные переменные (смотри корректную работу двух переменных i, описанных как в основной программе, так и в процедуре).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: