All pastes #340599 Raw Edit

Something

public text v1 · immutable
·published 2007-02-04 21:49 UTC
rendered paste body
type
pnode= ^node;
node= record
     data: integer;
     next: pnode;
     end;
var
first, current, prev: pnode;
n,dat,i: integer;
flag: boolean;
begin
{initializing}
first:= nil;
current:= nil;
prev:= nil;
n:=0;
flag:= false;
{get number of nodes in list}
write('Enter elements quantity: ');
readln(n);

new(first);
write('Element #1= ');
readln(dat);
first^.data:= dat;
first^.next:= nil;
prev:= first;
for i:= 2 to n do
begin {fill nodes with nubmers from keyboard input}
      new(current);
      write('Element #',i,'= ');
      readln(dat);
      current^.data:=dat;
      prev^.next:=current;
      prev:= current;
end;
prev:=first^.next;
{search dublicates in list}
while prev <> nil do
begin
     current:= first;
     while current <> nil do
     begin
          flag:= (prev^.data = current^.data) and (current <> prev);
          if flag then break;
          current:=current^.next;
     end;
     if flag then
     begin
          writeln('There are dublicates');
          break;
     end;
     prev:= prev^.next;
end;
{list output}
current:=first;
for i:=1 to n do
begin
     write(current^.data,' ');
     current:=current^.next;
end;
{freee memory}
for i:=1 to n do
begin
     current:= first^.next;
     dispose(first);
     first:= current;
end;
readln;
end.