Табличные информационные модели

Табличные информационные модели, Таблица, Таблица «объект - свойство», Таблица «объект - объект», Представление данных в табличной форме, Использование таблиц при решении задач

В табличных информационных моделях информация об объектах представляется в виде прямоугольной таблицы, состоящей из столбцов и строк.
Вам хорошо известно табличное представление расписания уроков, в табличной форме представляются расписания движения автобусов, самолётов, поездов и многое другое.
Представленная в таблице информация наглядна, компактна и легко обозрима.

1.4.1. Представление данных в табличной форме

В качестве информационных моделей объектов, обладающих одинаковыми наборами свойств, как правило, используются таблицы типа «объект—свойство».
Например, информацию о регионах нашей страны можно представить с помощью таблицы, фрагмент которой приведён в табл. 1.1.
В этой таблице каждая строка содержит информацию об одном объекте — регионе; столбцы — отдельные характеристики (свойства) рассматриваемых объектов: название, дата образования, площадь и т. д. Такие таблицы могут содержать числовую, текстовую и графическую информацию.

Таблица 1.1. Регионы Российской Федерации

Название

Дата образования (ДД.ММ.ГГ)

Площадь (тыс. км2)

Население (тыс. чел.)

Астраханская область

27.12.1943

44,1

1006,3

Архангельская область

23.09.1937

587,4

1336,5

Белгородская область

06.01.1954

27,1

1511,6

Владимирская область

14.08.1944

29,0

1524,0

Вологодская область

23.09.1937

145,7

1269,6

Воронежская область

13.06.1934

52,4

2378,8

Калужская область

05.07.1947

29,9

1041,6

В таблицах типа «объект—объект» отражается взаимосвязь между объектами одного или нескольких классов. Например, в школьных журналах есть таблица «Сведения о количестве уроков, пропущенных обучающимися»; её фрагмент представлен в табл. 1.2.

Таблица 1.2. Сведения о пропусках уроков

Учащиеся

Месяц: январь

Число

14

15

16

17

18

19

1

Акуленко Иван

 

 

 

 

 

 

2

Баранов Владимир

6

6

6

 

 

 

3

Варнаков Олег

 

 

 

 

 

 

4

Егорова Виктория

 

 

 

5

6

1

5

Машкова Карина

 

 

 

 

 

6

В этой таблице отражена связь «количество пропущенных уроков» между объектами класса «Учащиеся» и объектами класса «Число».
В таблице «Расстояния между городами» (табл. 1.3) представлены расстояния между парами объектов, принадлежащих одному классу «Город». Создайте эту таблицу в текстовом редакторе и добавьте в свободные строку и столбец информацию о своём населённом пункте.

Таблица 1.3. Расстояния между городами (км)

Город

Город

Москва

Петрозаводск

Самара

Казань

Москва

 

1076

1069

815

Петрозаводск

1076

 

2145

1891

Самара

1069

2145

 

631

Казань

815

1891

631

 

В форме таблицы «объект-объект* можно представить информацию о наличии границ (сухопутной, морской, озёрной, речной) России с другими странами; её фрагмент представлен в табл. 1.4.

Таблица 1.4. Граница Российской Федерации

Страна

Граница

сухопутная

речная

озёрная

морская

Норвегия

1

1

0

1

Финляндия

1

1

1

1

Латвия

1

1

1

0

Корея

0

1

0

1

Япония

0

0

0

1

Если граница соответствующего вида есть, то в нужную ячейку ставится 1, а если нет — 0.
Важная особенность этой таблицы состоит в том, что в ней фиксируются не количественные («Сколько?»), а качественные свойства (наличие/отсутствие связи между объектами).

1.4.2. Использование таблиц при решении задач
Рассмотрим несколько примеров задач, которые удобно решать с помощью табличных информационных моделей.

Пример 1. Два игрока играют в следующую игру. Перед ними лежат две кучи камней, в первой из которых 3 камня, а во второй — 2 камня. У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или увеличивает в 3 раза число камней в какой-то куче, или добавляет 1 камень в ка-кую-то кучу. Выигрывает игрок, после хода которого общее число камней в двух кучах становится не менее 16. Кто выигрывает при безошибочной игре — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Ранее мы рассмотрели способ записи решения подобных задач с помощью дерева. Сейчас оформим решение в виде таблицы (табл. 1.5).

Таблица 1.5. Таблица игры

Исходное

положение

1-й игрок      

1-й ход

2-й игрок - 1-й ход

1-й игрок      

2-й ход

2-й игрок - 2-й ход

1

2

3

4

5

3,2,5

9,2,11

27,2,29 ✓

 

 

 

3,6,9

3,18,21✓

 

 

 

4,2,6

12,2,14

36,2,38✓

 

 

 

4,6,10

12,6,18✓

 

 

 

5,2,7

15,2,17✓

 

 

 

4,3,7

12,3,15

36,3,39✓

 

 

 

4,9,13

12,9,21✓

 

 

 

5,3,8

15,3,18✓

 

 

 

4,4,8

12,4,16✓

 

3,3,6

9,3,12

27,3,12✓

 

 

 

4,3,7

 

 

Три числа в каждой ячейке таблицы обозначают соответственно количество камней в кучах и их сумму. В первом столбце зафиксировано распределение камней перед игрой (исходное положение).

Во втором столбце рассмотрены все возможные варианты ходов первого игрока; победить с первого хода он не может.

В третьем столбце рассмотрены имеющиеся выигрышные варианты ходов второго игрока (отмечены «галочкой»). При безошибочной игре первого игрока такие ситуации возникнуть не должны. Поэтому рассматриваем все возможные ходы второго игрока в случаях, когда у него нет выигрышного хода. Если получены одинаковые варианты, то все из них, кроме одного, исключаем из дальнейшего рассмотрения.

В четвёртом столбце отмечены имеющиеся выигрышные варианты второго хода первого игрока. При безошибочной игре второго игрока такие ситуации возникнуть не должны. Поэтому рассматриваем все возможные ходы первого игрока в случае, когда у него нет выигрышного хода.

В пятом столбце отмечены выигрышные ходы второго игрока, имеющиеся при всех вариантах хода первого игрока.

Таким образом, при безошибочной игре соперников побеждает второй игрок. Его первый ход должен быть таким, чтобы в кучах стало 4 и 3 камня.

Пример 2. С помощью взвешенного графа на рис. 1.6 представлена схема дорог, соединяющих населённые пункты А, В, С, Z), Е. Построим таблицу, соответствующую этому графу (рис. 1.10).
Весовая матрица
Если между парой населённых пунктов существует дорога, то в ячейку на пересечении соответствующих строки и столбца записывается число, равное её длине. Имеющиеся в таблице пустые клетки означают, что дорог между соответствующими населёнными пунктами нет. Построенная таким образом таблица называется весовой матрицей.

Для решения некоторых задач бывает удобно по имеющейся таблице строить граф. При этом одной и той же таблице могут соответствовать графы, внешне не похожие друг на друга. Например, рассмотренной выше таблице кроме графа на рис. 1.6 соответствует граф на рис. 1.11.



Пример 3. Таблицы типа «объект—объект» удобно использовать для решения логических задач, в которых требуется установить взаимно однозначное соответствие между объектами нескольких классов. Рассмотрим задачу, в которой объекты связаны тремя парами отношений.
Три подружки — Аня, Света и Настя — купили различные молочные коктейли в белом, голубом и зелёном стаканчиках. Ане достался не белый стаканчик, а Свете — не голубой. В белом стаканчике не банановый коктейль. В голубой стаканчик налит ванильный коктейль. Света не любит клубничный коктейль.
Требуется выяснить, какой коктейль и в каком стаканчике купила каждая из девочек.
Создадим три следующие таблицы:

Стаканчик

Девочка

 

Аня

Света

Настя

Белый

 

 

 

Голубой

 

 

 

Зелёный

 

 

 

Стаканчик

Коктейль

Банановый

Ванильный

Клубничный

Белый

 

 

 

Голубой

 

 

 

Зелёный

 

 

 

Коктейль

Девочка

Аня

Света

Настя

Банановый

 

 

 

Ванильный

 

 

 

Клубничный

 

 

 

Отметим в таблицах информацию, содержащуюся в условии задачи:

Стаканчик

Девочка

Аня

Света

Настя

Белый

0

 

 

Голубой

 

0

 

Зелёный

 

 

 

Стаканчик

Коктейль

Банановый

Ванильный

Клубничный

Белый

0

 

 

Голубой

 

1

 

Зелёный

 

 

 

Коктейль

Девочка

Аня

Света

Настя

Банановый

 

 

 

Ванильный

 

 

 

Клубничный

 

0

 

Имеющейся во второй таблице информации достаточно для того, чтобы заполнить всю эту таблицу:

Стаканчик

Коктейль

Банановый

Ванильный

Клубничный

Белый

0

0

1

Голубой

0

1

0

Зелёный

1

0

0

Используя факты, что Света купила не клубничный коктейль и что этот коктейль был налит в белый стаканчик, заполняем всю первую таблицу:

Стаканчик

Девочка

Аня

Света

Настя

Белый

0

0

1

Голубой

1

0

0

Зелёный

0

1

0

На основании информации в первой и второй таблицах можем заполнить всю третью таблицу:

Коктейль

Девочка

Аня

Света

Настя

Банановый

0

1

0

Ванильный

1

0

0

Клубничный

0

0

1

Ответ: Аня купила ванильный коктейль в голубом стаканчике, Света — банановый коктейль в зелёном стаканчике, Настя — клубничный коктейль в белом стаканчике.

Вопросы и задания