Зворотний зв'язок

Використання вільної пам'яті

if h = nil then isin := false

else

begin

while ( h^.next <> nil ) and ( h^.v <> s ) doh := h^.next;

{ ( h^.next = nil ) or ( h^.v = s ) }

isin := ( h^.v = s )

end

end

Оскільки список починається елементом pss^, то виклик функції має вигляд isin(s, pss). Зміна вказівника h при виконанні процедури не міняє значення pss і не веде до втрати зв'язку з головою списку, оскільки h є параметром-значенням.

Рядки, представлені в списку, друкуються з його початку просуванням по елементах до кінця:

procedure writelst ( h : TPle );

begin

while h <> nil do

begin writeln ( h^.v ); h := h^.next end

end

Зберемо означення типів str, TPle, Tle та наведені підпрограми в модуль strlist, і запишемо розв'язання задачі (1) у вигляді програми namlist1:

program namlist1(input, output);

uses strlist;

var pss : TPle; s : str;

begin

pss := nil; readln ( s );

while s <> '' do

begin

if not isin ( s, pss ) then add ( s, pss );

readln ( s )


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат