
- •1.Понятие информации, виды и способы её представления
- •2.Задачи получения, передачи, преобразования и хранения информации
- •3.Язык как способ представления и передачи информации.
- •4. Задачи, требующие автоматизированной обработки информации.
- •5.Системы автоматизированной и автоматической обработки информации.
- •6.Исторические этапы автоматизации обработки информации.
- •8. Жизненный цикл программного обеспечения.
- •10.Назначение и структура операционных систем
- •11. Назначение и последовательность функционирования компиляторов
- •12.Требования к языкам программирования и их классификация
- •13.Понятие алгоритма, его основные свойства и способы записи
- •14.Временная и объемная сложность алгоритмов.
- •15.Оценки временной сложности алгоритма
- •18.Методы доступа к функциям из библиотек и пакетов
- •22. Операции над данными стандартных типов и их старшинство
- •24. Манипуляторы потокового ввода и вывода
- •25. Ссылочные типы данных и их применение
- •Правила работы со ссылками
- •28.Структурный тип данных.
- •30.Многомерные массивы
- •31.Строки и массивы символов.
- •32. Файлы и потоки
- •35. Программная реализация алгоритмов линейной структуры
- •36. Программная реализация разветвляющихся алгоритмов
- •Разветвляющийся алгоритм
- •37.Реализация циклических алгоритмов с заранее неизвестным количеством повторений.
- •38.Реализация циклических алгоритмов с заранее известным количеством повторений Оператор for
- •40.Предварительное описание функции
- •41.Локальные и глобальные величины программы Локальные переменные
- •Объявление глобальных переменных
- •Правильное задание области действия глобальной переменной
- •42.Способы обмена информацией между вызывающей и вызываемой функциями
- •43.Передача функций в качестве параметров функций
- •46. Динамические переменные.
- •47.Списковые структуры данных
- •48.Последовательные, циклические и рекурсивные алгоритмы
- •55. Реализация устройств оперативной и долговременной памяти
- •56. Позиционные системы счисления и выполнение арифметических операций
32. Файлы и потоки
Файл (file) – именованная совокупность данных, находящаяся на внешнем устройстве и имеющая определенные атрибуты (характеристики).
Поток (srteam) – абстрактный канал связи, создаваемый в программе для обмена данными.
Файл, рассматриваемый как последовательность строк символов, разделенных непробельными символами, называется текстовым. Его можно создавать и редактировать с помощью любого текстового редактора (WordPad, NotePad), а также с помощью редактора кода MVS.
Работа с текстовыми файлами
Для получения доступа к текстовому файлу(потоку) в MVS нужно:
-
Создать поток соответствующего типа:
ifsteram - для ввода из файла ;
ofsteram - для вывода в файл;
fsteram - для обмена с файлом в двух направлениях.
-
Связать его с файлом данных и открыть (open) для работы в определенном режиме:
void ifstream::open(const char *имя_файла, openmode режим=ios::in);
void ofstream::open(const char *имя_файла, openmode режим=ios::out|ios::trunc);
void fstream::open(const char *имя_файла, openmode режим=ios::in|ios::out);
где имя_файла – имя файла, в которое может входить спецификатор пути;
режим – задает режим открытия файла, может принимать значения:
Режим |
Краткое описание |
ios::app |
Добавление в конец файла. Только для файлов открываемых для вывода. |
ios::ate |
Поиск конца файла при его открытии. Операции ввода/вывода могут быть выполнены в любом месте файла. |
ios::binary |
Открытие файла в двоичном режиме. По умолчанию все файлы открываются в текстовом режиме. |
ios::in |
Открытие файла для ввода |
ios::out |
Открытие файла для вывода |
ios::trunc |
Удаление содержимого ранее существовавшего файла с тем же названием и усечению его до 0 длины. При создании потока ofstreamлюбой ранее существовавший файл с тем же именем автоматически усекается до 0 длины |
-
Обмен данными с файлом через поток: запись в поток; чтение из потока; управление состоянием потока.
Ввод-вывод в поток можно реализовать с помощью операторов << и >>. При этом информация форматируется также, как и на экране. При считывании строк можно использовать методы get и getline.
С помощью функции bool eof (); можно определить, был ли достигнут конец файла ввода.
-
Для закрытия потока используется функция close().
35. Программная реализация алгоритмов линейной структуры
Базовой структурой следование называют последовательность операций, которые выполняются по очереди в порядке их записи. Программную реализацию такой алгоритмической структуры называют линейной программой. Линейные программы обычно предназначены для решения простейших задач. Как правило, для вычисления по формуле. В них не предусмотрен выбор из нескольких возможных направлений хода программы или циклическое повторение операций.
Алгоритм программы с линейной структурой может быть представлен следующим образом: