Значение Count при записи рассчитывается с использованием двух вложенных циклов, задающих номера всех клеток на участке таблицы (1, 1, LastCol, LastRow). В циклах значение Count увеличивается на единицу, если значение указателя на информацию клетки ≠ Nil.
В таблице 4.2 приведена организация информации очередной непустой клетки файла электронной таблицы.
Таблица 4.2
Информация очередной непустой клетки файла электронной таблицы
Оперативная информация | Длина оперативной информации, байт | Комментарий |
Col | SizeOf (Col) | Номер колонки клетки |
Row | SizeOf (Row) | Номер строки клетки |
Cells [Col, Row].CellFormat | Sizeof (Word) | Формат клетки |
Size | Sizeof (Size) | Длина информации клетки |
Фактическая информация клетки | Size | Информация клетки |
Значение Col, Row определяют сохраняемые или сохраненные в файле координаты каждой непустой клетки. Фрагмент кода программы сохранения информации непустой клетки таблицы приведен ниже:
if Cells [Col, Row].CellPtr <> nil then
begin
CPtr:= Cells [Col, Row].CellPtr;
case CPtr^.Attrib of
TXT: Size:= Length (CPtr^.TextStr) + 3;
VALUE: Size:= Sizeof (Real) + 2;
FORMULA: Size: = Length (CPtr^.Formula) + Sizeof (Real) + 3;
end; {case}
BlockWrite (F, Col, SizeOf (Col), Blocks);
BlockWrite (F, Row, SizeOf (Row), Blocks);
BlockWrite (F, Cells [Col, Row].CellFormat,
Sizeof (Word), Blocks);
BlockWrite (F, Size, SizeOf (Size), Blocks);
BlockWrite (F, CPtr^, Size, Blocks);
end;
ВЫВОДЫ
• Под
• Структура данных может быть физической и логической. В общем случае между логической и соответствующей ей физической структурами есть различие, вследствие которого существуют правила отображения логической структуры на физическую структуру.
• Над всеми структурами данных могут выполняться пять операций: создание, уничтожение, выбор (доступ), обновление, копирование.
• Важный признак структуры данных —
• Физическое представление может не соответствовать логическому представлению и, кроме того, существенно различаться в разных программных системах.
• Многие из рассмотренных структур данных возможно реализовать с использованием статических структур данных, динамических переменных и динамических структур данных.
• Файл — упорядоченный набор информации на внешнем носителе (наиболее часто на дисковом носителе).
Контрольные вопросы
1. Что такое структура данных программы?
2. Что понимают под организованностью данных?
3. В какой форме могут представляться данные?
4. Что отражает физическая структура данных?
5. В чем различие между физической и логической структурами данных?
6. Какие операции могут выполняться под структурами данных?
7. Приведите примеры широко известных структур данных.
8. Чем характеризуется статический массив?
9. Что такое строка? Какие бывают виды строк?
10. Назовите простейший метод поиска элемента.
11. Назовите основные операции над стеком.
12. Назовите процедуры для работы с симметричной матрицей.
13. Приведите пример реализации на языке Turbo Pascal структуры данных электронной таблицы.
14. Какие средства содержит файловая система?
15. Какую информацию содержит дескриптор файла или блок управления файлом?
16. С чего, как правило, начинается описание файлов?
17. Какими способами обычно выполняют документирование сложных нетипизированных файлов?
18. Что такое рефакторинг?
19. В каких случаях может потребоваться рефакторинг имен?
Глава 5
ПРОЕКТНАЯ ПРОЦЕДУРА РАЗРАБОТКИ ФУНКЦИОНАЛЬНЫХ ОПИСАНИЙ
5.1. ОБЩИЕ СВЕДЕНИЯ О ПРОЕКТНОЙ ПРОЦЕДУРЕ
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии