Упражнения на работу с иерархическими структурами

Задать в dbf таблице следующей структуры (номер элемента, код родительского элемента, наименование узла, сумма узла) 15-20 записей. Написать программу для соответствующего варианта задагий с помощью рекурсивных процедур.

Вариант 1.

1. Получить количество корневых элементов.

2. Вычислить сумму дочерних узлов.

3. Результат записать в файл txt.

Вариант 2.

1. Получить количество дочерних узлов.

2. Получить сумму узла по ключу.

3. Результат записать в файл doc.

Вариант 3.

1. Получить ключ корневого элемента по порядковому номеру.

2. Вычислить сумму дочерних узлов и заменить сумму в соответствующем родительском элементе новой суммой.

3. Результат записать в файл xls.

Вариант 4.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл dbf.

Вариант 5.

1. Добавить 2 дочерних узла.

2. Получить по ключу название заданного узла.

3. Результат записать в файл txt.

Вариант 6.

1. Получить количество дочерних узлов.

2. Если у узла есть дочерние узлы, то для всех дочерних узлов вычислить сумму, сравнить с суммой в родительском узле и если они различаются, то заменить сумму в родительском узле на вычисленную.

3. Результат записать в файл doc.

Вариант 7.

1. Получить количество корневых элементов.

2. Если дочерних узлов нет, оставить сумму родительского узла без изменения.

3. Результат записать в файл xls.

Вариант 8.

1. Получить ключ корневого элемента по порядковому номеру.

2. Заменить сумму в родительском узле суммой дочерних узлов.

3. Результат записать в файл dbf.

Вариант 9.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл txt.

Вариант 10.

1. Добавить 3 дочерних узла.

2. Вычислить сумму дочерних узлов и заменить сумму в родительском узле, если она отличается от суммы, вычисленной в дочерних узлах.

3. Результат записать в файл doc.

Вариант 11.

1. Получить количество дочерних узлов.

2. Заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл xls.

Вариант 12.

1. Получить количество корневых элементов.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл dbf.

Вариант 13.

1. Получить ключ корневого элемента по порядковому номеру.

2. Вычислить сумму дочерних узлов.

3. Результат записать в файл txt.

Вариант 14.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов, если суммы отличаются.

3. Результат записать в файл doc.

Вариант 15.

1. Получить количество дочерних узлов.

2. Заменить сумму в узле с заданным номером суммой дочерних узлов.

3. Результат записать в файл xls.

Вариант 16.

1. Получить ключ корневого элемента по порядковому номеру.

2. Вычислить сумму дочерних узлов и заменить сумму в родительском элементе, если она отличается от вычисленной суммы в дочерних узлах.

3. Результат записать в файл dbf.

Вариант 17.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Заменить сумму в узле с заданным номером суммой дочерних узлов.

3. Результат записать в файл txt.

Вариант 18.

1. Добавить 3 дочерних узла.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл doc.

Вариант 19.

1. Получить количество дочерних узлов.

2. Заменить сумму в узле суммой дочерних узлов.

3. Результат записать в файл xls.

Вариант 20.

1. Получить количество корневых элементов.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл dbf.

Вариант 21.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Вычислить сумму дочерних узлов.

3. Результат записать в файл txt.

Вариант 22.

1. Получить ключ корневого элемента по порядковому номеру.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл doc.

Вариант 23.

1. Получить ключ дочернего элемента по порядковому номеру.

2. Заменить сумму в узле суммой дочерних узлов.

3. Результат записать в файл xls.

Вариант 24.

1. Получить количество корневых элементов.

2. Заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл dbf.

Вариант 25.

1. Получить количество дочерних узлов.

2. Если у узла есть дочерние узлы, то заменить значение в узле с родительским кодом на новую сумму, состоящую из суммы всех дочерних узлов.

3. Результат записать в файл txt.


Наши рекомендации