Миста привет, написал получение высоты дерева значений.
Но думаю, что вы можете лучше.)
Вот мой вариант:
Сообщить(ПолучитьВысотуДерева(Дерево, 0));
Функция ПолучитьВысотуДерева(Дерево, Высота)
Если Дерево.Строки.Количество() = 0 Тогда
Возврат Высота;
Иначе
СамаяВысокая = 0;
Для каждого Стр Из Дерево.Строки Цикл
ВысотаСтроки = ПолучитьВысотуДерева(Стр, Высота + 1);
Если ВысотаСтроки>СамаяВысокая Тогда
СамаяВысокая = ВысотаСтроки;
КонецЕсли;
КонецЦикла;
Возврат СамаяВысокая;
КонецЕсли;
НУ раз лучше нельзя, пусть висит тут, когда искал ничего не нашел.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший