§ 2.7. Вычислительные таблицы
Вычислительными будем называть такие таблицы, в которых значения некоторых свойств вычисляются с использованием значений других свойств из этой же таблицы.
Пример 1
Таблица 2.19 Подарочный набор для первоклассника
Товар |
Цена, руб. |
Количество |
Стоимость, руб. |
Тетрадь, 12л., клетка |
3 |
10 |
30 |
Тетрадь, 12л., линейка косая |
2,5 |
10 |
25 |
Альбом для рисования, 8 л. |
5 |
4 |
20 |
Карандаши цветные «Зарница», 6 цв. |
20 |
1 |
20 |
Авторучка |
5 |
6 |
30 |
Карандаш простой |
1 |
6 |
6 |
Цветная бумага, 8 цв. |
12 |
2 |
24 |
Итого: |
|
39 |
155 |
Эта таблица относится к типу ОС. Значения в графе «стоимость» вычислены по формуле: цена * количество.
Последняя строка этой таблицы называется итоговой. Она предназначена для записи итогов. Итоговая строка имеет заголовок «Итого» или «Всего».
В ячейках итоговой строки размещают суммы чисел из соответствующих граф. Но эти суммы должны иметь смысл. Так, если сложить все числа в графе «Количество», то мы узнаем общее число предметов, входящих в подарочный набор. Общая стоимость набора находится суммированием всех чисел, стоящих в графе «Стоимость». А вот сумма по графе «Цена» не имеет никакого смысла.
Пример 2
Собираясь на пляж, веселые человечки решили запастись прохладительными напитками. Незнайка взял с собой 2 литра кваса, 1 литр газировки и 1 литр малинового сиропа, Пончик — 3 литра газировки и 2 литра малинового сиропа, Торопыжка — 2 литра газировки, доктор Пилюлькин — 1 литр кваса и 1 литр касторки.
Сколько литров напитков каждого вида взяли все человечки вместе?
Сколько всего литров напитков взял с собой каждый из человечков?
Сколько всего литров напитков взяли все человечки вместе?
Представим имеющуюся информацию о парах объектов классов «человечек» — «напиток» в таблице типа ООО. В этом случае свойством пары объектов будет количество (в литрах) напитка, запасенного человечком.
Таблица 2.20
Напиток |
Человечек |
||||
Незнайка |
Пончик |
Торопыжка |
Пилюлькин |
Всего |
|
Квас,л |
2 |
0 |
0 |
1 |
3 |
Газировка,л |
1 |
3 |
2 |
0 |
6 |
Сироп, л |
1 |
2 |
0 |
0 |
3 |
Касторка,л |
0 |
0 |
0 |
1 |
1 |
Итого: |
4 |
5 |
2 |
2 |
13 |
Ответ на первый вопрос находится в итоговой графе таблицы. Ответ на второй вопрос — в итоговой строке. Ответ на третий вопрос находится в нижней правой ячейке — на пересечении итоговой строки и итоговой графы.
Обратите внимание, что последнее число может быть получено двумя способами. Узнать, сколько всего напитков взяли с собой человечки, можно, если сложить коли-
чество напитков, взятых Незнайкой, Пончиком, Торопыжкой и Пилюлькиным (суммирование по итоговой строке). Это же число будет получено, если сложить взятое человечками количество кваса, газировки, малинового сиропа и касторки (суммирование по итоговой графе). Эту особенность числа, стоящего в правой нижней ячейке таблицы, можно использовать для контроля своих вычислений.
Пример 3
Известно, что 1 литр кваса в Цветочном городе стоит 1 монету, 1 литр газировки — 3 монеты, 1 литр малинового сиропа — 6 монет, 1 литр касторки — 2 монеты.
Сколько монет истратил на покупку напитков каждый человечек?
Сколько монет затрачено на покупку напитков каждого вида?
Сколько потрачено денег всеми человечками вместе?
У нас появилось дополнительное свойство «цена», которое характеризует не пару объектов, а относится к одному объекту этой пары. Можем строить таблицу типа ОСО. Для этого видоизменим таблицу 2.20: правее боковика добавим графу «Цена». Для каждого человечка введем дополнительную графу «Стоимость». Итоговая графа тоже разбивается на две графы — «Количество» и «Стоимость»:
Таблица 2.21
Напитки |
Цена, мон. |
Незнайка |
Пончик |
Торопыжка |
Пилюлькин |
Всего |
|||||
Кол-во, л |
Ст-ть, |
Кол-во, л |
Ст-ть, мон. |
Кол-во, л |
Ст-ть, мон. |
Кол-во, л |
Ст-ть, мон. |
Кол-во, л |
Ст-ть, мон. |
||
Квас |
1 |
2 |
2 |
0 |
0 |
0 |
0 |
1 |
1 |
3 |
3 |
Гази- ровка |
3 |
1 |
3 |
3 |
9 |
2 |
6 |
0 |
0 |
6 |
18 |
Сироп |
6 |
1 |
6 |
2 |
12 |
0 |
0 |
0 |
0 |
3 |
18 |
Касторка |
2 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
2 |
1 |
2 |
Итого: |
|
4 |
11 |
5 |
21 |
2 |
6 |
2 |
3 |
13 |
41 |