
- •Способы описания алгоритмов.
- •2. Основные понятия: язык, лексема, алфавит, идентификатор, константа, переменная, метка, число.
- •Структура Паскаль – программы.
- •4. Заголовок программы и разделы описаний.
- •5. Типы данных. Стандартные и пользовательские типы.
- •6. Типы данных. Скаляры и структуры данных.
- •Пользовательские скалярные типы данных.
- •8. Раздел описания переменных.
- •9.Машинное представление чисел и символов. Системы счисления
- •10. Символьный тип данных представление в эвм, операции над ними.
- •11. Целочисленные типы данных представление в эвм, операции над ними.
- •12. Булевы величины. Их машинное представление и операции над ними.
- •13. Вещественные типы данных машинное представление, операции над ними.
- •14. Пользовательские скалярные типы данных.
- •15. Выражения, операции и операнды.
- •Xor логическое исключающее сложение
- •16. Арифметические операции, тип их операндов и результата.
- •17. Операции отношения.
- •18. Логические операции, тип их операндов и результата.
- •19. Приоритет выполнения операций в выражении.
- •20. Использование библиотечных функций в выражении.
- •21. Операторы. Классификация. Оператор присваивания, совместимость типов по присваиванию, оператор перехода, составной оператор.
- •22. Условный оператор if.
- •23. Условный оператор case.
- •24. Оператор цикла for.
- •25. Оператор цикла while.
- •26. Оператор цикла repeat.
- •27. Сравнительный анализ операторов цикла.
- •28. Обобщенные управляющие конструкции.
- •29. Работа с данными. Процедуры ввода-вывода.
- •30. Массивы одномерные и многомерные. Обращение к элементам массива, ввод – вывод массива.
- •31. Сортировка массива. Алгоритм пузырька.
- •32. Алгоритм сортировки массива выбором.
- •33. Алгоритм сортировки массива вставки.
- •34. Записи описание, обращение к полям записи, оператор with.
- •35. Множества. Назначение, определение, операции над множествами.
- •36. Файловые структуры их классификация.
- •37. Текстовые файлы. Особенности работы с ними.
- •38. Типизированные файлы. Особенности работы с ними.
- •39. Нетипизированные файлы. Особенности работы с ними.
- •40. Константы. Описание скалярных констант.
- •41. Константы. Описание констант массивов.
- •42. Константы. Описание констант записей.
- •43. Управление экраном компьютера в текстовом и графическом режимах.
- •44. Процедуры и функции. Их структура, взаимодействие с головной программой.
- •45. Область видимости имен.
- •46. Отличие в применении процедур и функций.
- •47. Формальные и фактические параметры. Параметры значения.
- •48. Формальные и фактические параметры. Параметры переменной.
- •49. Формальные и фактические параметры. Параметры константы.
- •50. Решение нелинейного уравнения методом итерации.
- •51. Решение нелинейного уравнения методом бисекции.
- •52. Решение нелинейного уравнения методом Метод хорд.
- •53. Решение нелинейных уравнений методом касательных.
- •54. Локальные и глобальные сети, адрес при навигации в сети. Протокол tcp/ip.
- •55. Защита информации, электронно цифровая подпись.
- •Вопрос 58 (логические и арефмитические основы эвм)
- •59 Вопрос (двоичная сс. Действия над целыми и вещественными числами в двоичной сс)
38. Типизированные файлы. Особенности работы с ними.
Типизированные файлы
Как видно из описания типизированные файлы состоят из записей - участков одинакового размера и типа, расположенных последовательно. Записи нумируются с 0 и в один и тот же момент для операций чтения/записи доступна только одна из них. Постоянство размера каждой записи позволяет производить позиционирование - установку позиции чтения/записи - на любую из них.Procedure Seek(Var F; N: Longint); помещает текущий указатель чтения/записи файловой переменной F на запись номер N
Следует следить, чтобы позиция, на которую устанавливался указатель чтения/записи была правильной, то есть не выходила за пределы файла.
Чтение и запись для типизированных файлов производятся процедурамиProcedure Read(F, V1 [, V2, V3 ..]); читает одну или несколько записей из типизированного файла, начиная с текущей позиции чтения
Procedure Write(F, V1 [, V2, V3 ..]); записывает в файл одну или несколько записей, начиная с текущей позиции указателя записи
В результате выполнения любой из них файловый указатель перемещается на следующую после последней прочитанной/записанной записи (или на конец файла). Определить текущее значение файлового указателя можно с помощью функции FilePos(F), а общее количество записей - FileSize(F).
Таким образом существует возможность произвольного доступа к любой из существующих записей типизированного файла. Естественное назначение типизированных файлов - сохранение/восстановление множества (стуктурированных) однотипных данных.
39. Нетипизированные файлы. Особенности работы с ними.
Нетипизированные файлы, открываясь и закрываясь также, как и типизированные, читаются и пишутся не записями, а блоками. Принципиальным различием между записью и блоком является то, что размер блока указывается при открытии нетипизированного файла (а не на этапе компиляции). Различий же в порядке работы с ними нет. Из этого можно выывести не совсем корректное, но по сути правильное определение нетипизированного файла: "типизированный файл с переменным размером записи, определяемым в момент открытия".
Чтение и запись в нетипизированные файлы производится по тем же принципам - блоками. Для этого применяют процедурыProcedure BlockWrite(Var F: File; Var Buf; Count: Word; [Var Result: Word]); пишет в открытый файл F Count блоков из переменной Buf
Procedure BlockRead(Var F: File; Var Buf; Count: Word; [Var Result: Word]); читает в переменную Buf из открытого файла F Count блоков
Переменная в данном случае может быть любого размера, типа и месторасположения, однако ее размер должен быть не меньше, чем <размер>*<размер_блока>, который был указан при открытии - процедуры не проверяют реальный размер переменных, а обрабатывают непрерывный участок памяти, начиная с указанной переменной. Необязательный последний параметр возвращает количество реально записанных или считанных записей. Желательно, чтобы размер записи, указанный при открытии файла, был кратен размеру блока, физически читаемого с диска или размеру блока буфера MS-DOS. Позиционирование производится посредством Seek по блокам точно так же, как и для типизированных файлов.
Таким образом программист имеет возможность обращаться к любому участку файла по своему усмотрению и в произвольном порядке. Кроме того, операции чтения/записи больших блоков выполнябтся быстрее, чем множество аналогичных операций для маленьких записей. Применение нетипизированных файлов очевидно: для сохранения/восстановления (динамически размещаемых) массивов данных переменного значимого размера