Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- type s=^el;
- el=record
- inf:integer;
- nextl,nextr:s;
- end;
- const
- size = 20;
- var p,q,r:s;
- num : array[1..size] of integer;
- procedure sozdlds_and_write (n:integer);
- var i: integer;
- begin
- new(p);
- p^.nextr := nil;
- p^.nextl := nil;
- p^.inf := random(10);
- q := p;
- i := 1;
- writeln('Элементы массива (размер ', size, '):');
- write(p^.inf, ' ');
- while i <> size do
- begin
- new(r);
- inc(i);
- r^.nextr := nil;
- r^.nextl := q;
- r^.inf := random(10);
- q^.nextr := r;
- q := r;
- write(r^.inf, ' ');
- end;
- q^.nextl:=nil;
- writeln();
- end;
- procedure check_lds;
- var i,j,k:integer;
- begin
- r:=p; q:=p; k:=0; i:=1; j:=0;
- while r^.nextr<>nil do
- begin
- r:= r^.nextr;
- end;
- while q^.nextr<>nil do
- begin
- if q^.inf = r^.inf then
- begin
- inc(k); inc(j); num[j]:=i;
- end;
- q:=q^.nextr; inc(i);
- end;
- writeln('Всего ', k, ' элементов, у которых инф. поле равно инф. полю последнего элемента');
- writeln('Порядковые номера элементов:');
- for i:=1 to j do
- write( num[i],' ');
- end;
- begin
- randomize;
- sozdlds_and_write(size);
- check_lds;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement