Кольцевые структуры

Пусть исходная сеть имеет вид рисунка 12. Ее описание данным способом показано в таблицах 76 – 80.

Таблица 76 Таблица 77 Таблица 78

№ п/п Шифр учебной группы Ссылка на порожденный элемент (табл.79)   № п/п Дисциплина Ссылка на порожденный элемент (табл.80)   № п/п Оценка Ссылка на порожденный элемент (табл.80)
  01-АС       Информатика          
  01-ИЭ       Программирование          
  02-ВТ       Физика          

Таблица 79

№ п/п ФИО студента Ссылка на подобный элемент Ссылка на порожденный элемент (табл.80) Ссылка на родительский элемент (табл.76)
  Иванов И.И.      
  Сидоров С.С.      
  Петров П.П.      
  Федоров Ф.Ф.      
  Яковлев Я.Я.      

Таблица 80

№ п/п Э Ссылка на подобный элемент в цепи студентов Ссылка на родительский элемент в цепи студентов (табл.79) Ссылка на подобный элемент в цепи оценок Ссылка на родительский элемент в цепи оценок (табл.78) Ссылка на подобный элемент в цепи дисциплин Ссылка на родительский элемент в цепи дисциплин (табл.77)
  Э1            
  Э2            
  Э3            
  Э4            
  Э5            

Здесь таблицы 76, 79 описывают состав учебных групп, таблицы 77, 79 показывают, какие оценки были получены и по каким дисциплинам сдавались экзамены, таблица 80 представляет связь между студентами, дисциплинами и оценками.

Рассмотрим решение задач просмотра элементов.

Пример 34. Пусть требуется определить, какую оценку по Информатике получил студент Иванов И.И., т.е. qпросмотр = (ФИО студента = Иванов И.И., Дисциплина = Информатика, Оценка), где Кдоступ = Иванов И.И., Информатика. Сеть задана таблицами 76 – 80.

Решение задачи:

1. по таблице 79 определяется элемент с ключом Иванов И.И. – это элемент с номером 1;

2. по полю Ссылка на порожденный элемент устанавливается номер порожденного элемента в таблице 80 – это элемент 3 (это значит, что Иванов И.И. сдал только один экзамен);

3. в таблице 80 обращаются к элементу 3. Для решения поставленной задачи требуется установить родительский элемент в цепи оценок. Для этого по полю Ссылка на родительский элемент в цепи оценок определяютнужную ссылку – 1;

4. в таблице 78 в строке 1 определяем полученную оценку – это 5. Теперь требуется уточнить, по какой дисциплине получена эта оценка;

5. по графе Ссылка на родительский элемент в цепи дисциплин таблицы 80для элемента 3 определяем номер родительского элемента из таблицы 77 – номер 1;

6. в таблице 77 в элементе с номером 1 определяем название дисциплины – Информатика. Таким образом, студент Иванов И.И. получил по информатике 5. Алгоритм заканчивает работу.

Рассмотрим решение задачи добавления нового элемента.

Пример 35. Пусть в сети рисунка 12 надо разместить элемент со структурой:

ФИО студента Шифр учебной группы Дисциплина Оценка
Петров П.П. 02-ВТ Информатика  

т.е. qдобавление = (ФИО студента = Петров П.П., Шифр учебной группы = 02-ВТ, Дисциплина = Информатика, Оценка = 5), где Кдоступ = Петров П.П., 02-ВТ, Информатика, 5.

Очевидно, после размещения сеть примет вид рисунка 13. Тогда таблицы 78 – 80 модифицируются и примут вид таблиц 81 – 83 (новые и измененные элементы выделены заливкой):

Таблица 81 Таблица 82

№ п/п ФИО студента Ссылка на подобный элемент Ссылка на порожденный элемент (табл.83) Ссылка на родительский элемент (табл.76)   № п/п Оценка Ссылка на порожденный элемент (табл.83)
  Иванов И.И.              
  Сидоров С.С.              
  Петров П.П.              
  Федоров Ф.Ф.              
  Яковлев Я.Я.              

Таблица 83

№ п/п Э Ссылка на подобный элемент в цепи студентов Ссылка на родительский элемент в цепи студентов (табл.81) Ссылка на подобный элемент в цепи оценок Ссылка на родительский элемент в цепи оценок (табл.82) Ссылка на подобный элемент в цепи дисциплин Ссылка на родительский элемент в цепи дисциплин (табл.77)
  Э1            
  Э2            
  Э3            
  Э4            
  Э5            
  Э6            

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: