n: Integer;: Char ;;:=0; not (BTree [1] .ex) then (true ) ( Введіть елемент: ); (e);:=0; i:=1 to m doBTree [i] .ex thenBTree [i] .info=e then:=j + 1; j lt; 2 theni :=1 to m do [i]:=0;:=FindElement (e, false, A); k lt; gt; 0 then (k); ( Елемент видалений ); ( видаляється елемент не знайдений! ); ( Даних елементів у дереві декілька. Ви хочете видалити їх все? (Так/Деякі/Передумав видаляти) (Введіть заголовну букву): ); (v); not (v in [ Д , д , Н , н ]) then; (v in [ Д , д ]) then i:=1 to m do [i]:=0 ;: =FindElement (e, false, A); k lt; gt; 0 then (k); k=0; ( Елементи видалені ); i:=1 to m do [i]:=0; (e, false , A); ( Індекси шуканого елемента рівні: ); i:=1 to m doA [i] lt; gt; 0 then (A [i], );:=l + 1 ;;; ( Введіть кількість тих елементів, які хочете видалити, а потім їх індекси: ); (k); (k gt; l) or (k lt; 0) do ( Помилковий введення! Введіть ще раз: ); (k) ;;:=k; (n); j:=1 to m do (A [j]=n) and (n lt; gt; 0) then (n);:=k - 1 ;; i=k then ( Помилковий введення! Індекс знаходиться не серед видаляються елементів! Введіть ще раз: ); k=0; ( Елементи видалені ) ;;; ;;; DeletePartOfTree;, i, j, k, l, n: Integer;: Char ;;:=0; not (BTree [1] .ex) then (true) ( Введіть вершину видаляється поддерева: ) ; (e);:=0; i:=1 to m doBTree [i] .ex thenBTree [i] .info=e then:=j + 1; j lt; 2 theni:=1 to m do [i]: =0;:=FindElement (e, false, A); k lt; gt; 0 then (k); ( Піддерево видалено ); ( видаляти поддерево, не знайдено! ); ( Даних елементів в дереві декілька. Ви хочете видалити їх все? (Так/Деякі/Передумав видаляти) (Введіть заголовну букву): ); (v); not (v in [ Д , д , Н , н ]) then; not (v in [ Н , н ]) then i:=1 to m do [i]:=0;:=FindElement (e, false, A) ; k lt; gt; 0 then (k); (k=0); ( Елементи видалені ); i:=1 to m do [i]:=0; (e, false, A); ( Індекси шуканого елемента рівні: ); i:=1 to m doA [i] lt; gt; 0 then (A [i], );:=l + 1 ;;; ( Введіть кількість тих елементів, які хочете видалити, а потім їх індекси: ); (k); (k gt; l) or (k lt; 0) do ( Помилковий введення! Введіть ще раз: ); (k) ;;:=k; (n); j:=1 to m do (A [j]=n) and (n lt; gt; 0) then (n);:=k - 1 ;; i=k then ( Помилковий введення! Індекс знаходиться не серед видаляються елементів! Введіть ще раз: ); k=0; ( Піддерева видалені ) ;;; ;;; DeleteFullTree;: Integer ;; not (BTree [1] .ex) then (true) i:=1 to m do [i] .ex:=false; ( Дерево видалено ) ;;;; ShowTree ;, i: Integer;: AnsiString ;;:= Можливо, ви бачите лише частину дерева. Натисніть стрілочку вліво, щоб побачити ліве піддерево даного кореня, стрілочку вправо, щоб побачити праве піддерево даного кореня, стрілочку вгору, щоб побачити поддерево батька даного кореня, Enter, щоб вийти. Raquo ;;:=1; BTree [1] .ex then (MessageStr); (80,25,28, d, 0);:=ReadKey ;; (MessageStr); ch=# 80 then (80,25,28, d, 0); ch=# 72 theni:=1 to m doBTree [i] .ex then (BTree [i] .left=d) or (BTree [i] .right=d) then; (MessageStr);:=i; (80,25,28, d, 0 ) ;; (80,25,28, d, 0) ;; ch=# 75 thenBTree [d] .left lt; gt; 0 then:=BTree [d] .left ;; (MessageStr); (80,25, 28, d, 0) ;; ch=# 77 thenBTree [d] .right lt; gt; 0 then:=BTree [d] .right ;; (MessageStr); (80,25,28, d, 0) ;; ch=# 13; (true) ;; (white); [1]:= Створити дерево raquo ;; [2]:= Додати в дерево елементи raquo ;; [3]:= Знайти елемент raquo ;; [4]:= Видалити елемент raquo ;; [5]:= Видалити поддерево raquo ;; [6]:= Видалити дерево raquo ;; [7]:= Вивести поточний стан дерева на екран raquo ;; [ 8]:= Вихід з програми raquo ;;:=1; :=70; :=25; (lightblue) ;;:=ReadKey; ch=# 0 then:=ReadKey; ch=# 80 thenpunkt lt; n then (lightblue); (x, y + punkt - 1); (menu [punkt]) ;:=punkt + 1; (red); (x, y + punkt - 1); (menu [punkt]); (lightblue) ;; ch=# 72 thenpunkt gt; 1 then (lightblue); (x, y + punkt - 1); (menu [punkt]);:=punkt - 1; (red) ; (x, y + punkt - 1); (menu [punkt]); (lightblue) ;; ch=# 13 then (lightblue); punkt of
: CreateTree (false);
: InsertElementInTree;
: FindElementOfTree;
: DeleteElementOfTree;
: DeletePartOfTree;
: DeleteFullTree;
: ShowTree;
: ch:=# 27 ;;;; ch=# 27;.
програмний функція дерево елемент