Uses CRT; type PList = ^TList; TList = record num : real; Next : PList; end; function p26(L:PList):boolean; var i,j,k : PList; begin p26:=False; i:=L; while i <> nil do begin j:=i^.next; while j <> nil do begin k:=j^.next; while k <> nil do begin if (i^.num = j^.num) and (k^.num = j^.num) then begin p26:=true; exit; end; k:=k^.next; end; j:=j^.next; end; i:=i^.next; end; end;{Задание} {---------------------------------} Function GetList:PList; var N,p : PList; cur : real; begin WriteLn('Вводите числа, заканичивая 0-м'); read(cur); New(p); p^.num := cur; p^.Next := nil; while cur <> 0 do begin read(cur); New(N); N^.num := cur; N^.Next := p; p:=N; end; GetList := P; end; Procedure WriteList(var L : PList); var P : Plist; begin p:=L; while p<>nil do begin write(p^.num:0:2,' '); p:=p^.next; end; end; var List : PList; begin ClrScr; List := GetList; WriteLn('Список такой:'); WriteList(List); WriteLn; If p26(List) then writeLn('Есть элементы, встечающиеся больше 2-х раз') else writeLn('Нет элементов, встечающиеся больше 2-х раз'); end.