Контрольные вопросы
Какие функции осуществляют чтение и запись при работе с двоичными файлами?
В чем состоят особенности чтения массивов из двоичных файлов и их записи двоичные файлы?
Что такое последовательный и произвольный доступ к компонентам файла?
Как "подойти" к предпоследнему элементу файла? Привести все возможные варианты.
Лабораторное задание
Для выполнения лабораторной работы необходимо составить программу согласно своему варианту задания из табл.8.2 и (или) из табл.8.3 по указанию преподавателя.
Варианты заданий
Таблица 8.2
Номер варианта |
Задание |
1, 14 |
Создать двоичный файл из случайно заданных значений целого типа. Записать их в другой файл, исключив повторные вхождения элементов. Порядок следования чисел сохранить. |
2, 15 |
Создать двоичный файл из случайно заданных значений целого типа. Заменить каждое третье число нулем, если оно отрицательное и единицей, если положительное. |
3, 16 |
В двоичном файле, элементами которого являются числа, заменить заданным числом:
Новые значения вводятся с клавиатуры. |
4, 17 |
В двоичном файле, элементами которого являются целые числа. Удалить из него число, записанное после первого нуля. Результат записать в другой файл. |
Номер варианта |
Задание |
5, 18 |
Упорядочить значения двоичного файла, содержащего данные типа charпо алфавиту. |
6, 19 |
В двоичном файле с элементами типа int заменить четные элементы на 0, а нечетные на 1. |
7, 20 |
В файле типа doubleпоменять местами максимальный и минимальный элементы. |
8, 21 |
Из файла, содержащего как положительные, так и отрицательные вещественные числа, сформировать два других, в один из которых поместить значения, большие, чем число, введенное с клавиатуры, в другой - меньшие. Определить количество элементов в обоих файлах. |
9, 22 |
В конец целочисленного двоичного файла дописать нечетные значения, содержащиеся в этом файле. |
10, 23 |
В двоичном файле с элементами типа floatзаменить максимальный и минимальный элементы средним арифметическим значением элементов этого файла. |
11,24 |
Создать двоичный файл из случайно заданных значений целого типа. Создать другой файл, в который поместить все элементы исходного файла, порядковый номер которых кратен 3, упорядочив их по убыванию. |
12, 25 |
Создать два двоичных файла с элементами символьного типа. Выяснить, совпадают ли их элементы. Если нет, то получить номер первого компонента, в котором эти файлы отличаются друг от друга. |
13,26 |
Создать два двоичных файла с упорядоченными наборами элементов целого типа. Получить новый файл в отсортированном виде путем слияния двух исходных файлов. |
Таблица 8.3
Номер варианта |
Задание |
1, 12, 23 |
Создать двоичный файл, содержащий таблицу с информацией об автомобилях: фамилию владельца, марку автомобиля, дату выпуска, расход горючего. Вывести в один из текстовых файлов список владельцев автомобилей, определенной марки. В другой – информацию об автомобилях, имеющих дату выпуска не ранее XXXXгода и расход горючего в заданном диапазоне. Год выпуска, диапазон значений расхода горючего вводится с клавиатуры. |
2, 13, 24 |
Создать в двоичном файле таблицу с информацией о клиентах банка: фамилия, размер вклада, процент по вкладу, дата внесения вклада. Увеличить размер вклада на соответствующее количество процентов тем вкладчикам, чей вклад пролежал год. Вывести в текстовый файл список из 3 вкладчиков с максимальным размером вклада. |
3, 14, 25 |
Создать в двоичном файле таблицу с информацией о вершинах горного массива: название вершины, высота над уровнем моря, категория сложности (от 1 до 5), лучшее время (месяц) для восхождения. Упорядочить список по категориям сложности, а затем – по высоте (в исходном файле). Вывести в текстовый файл список вершин заданной категории сложности, которые можно штурмовать в определенном месяце. Категория сложности и месяц вводятся с клавиатуры. |
4, 15, 26 |
Создать двоичный файл, содержащий таблицу со списком продуктов магазина: название, стоимость единицы товара, вес единицы товара, дата реализации. Посчитать и вывести в текстовый файл стоимость и вес корзины покупателя. Набор товара и количество ввести с клавиатуры. Вывести в другой текстовый файл список товаров с истекшим сроком хранения. |
Номер варианта |
Задание |
5, 16 |
Создать двоичный файл, содержащий информацию о продукции цветочного салона: название цветка, стоимость, цвет. Составить варианты трехцветного и двухцветного букетов стоимостью не больше стоимости, заданной с клавиатуры. Сохранить информацию в текстовом файле. |
6,17 |
Создать двоичный файл, содержащий таблицу со списком абитуриентов: фамилия, средний балл аттестата, результат экзамена по русскому языку (зачет/незачет), балл по математике, балл по физике (по 10-балльной системе). Вывести в один из текстовых файлов список абитуриентов, имеющих зачет по русскому языку и суммарный балл по математике и физике ≥ 17. В другой – список абитуриентов со средним баллом аттестата ≥ 4.95. |
7,18 |
Создать двоичный файл, содержащий таблицу сотрудников фирмы: фамилия, пол, количество членов семьи, зарплата. Вывести в один из текстовых файлов список сотрудников с наибольшим количеством членов семьи и минимальной зарплатой. Вывести в другой текстовый файл список сотрудников женского пола с зарплатой ниже средней по фирме. |
8,19 |
Создать двоичный файл, содержащий таблицу туров некоторой туристической фирмы: страна, продолжительность путешествия, дата отправления, стоимость. Вывести в текстовый файл список горящихпутевок (до отправления осталось 5 дней). Вывести список путешествий в заданном временном интервале и не превышающий определенной стоимости. |
Номер варианта |
Задание |
9, 20 |
Создать двоичный файл, содержащий таблицу с информацией об учениках класса: фамилия, пол, возраст, рост, вес. Упорядочить список в исходном файле по убыванию роста. В класс поступил новый ученик. Вставить его фамилию в список, не нарушая порядка. Вывести в текстовый файл список учеников, рост которых больше вновь поступившего в класс. |
10, 21 |
Создать двоичный файл, содержащий таблицу с данными о численности населения (миллионов жителей) и площади (тысяч квадратных километров) нескольких государств. Добавить в исходный файл информацию о плотности населения каждой страны. Вывести в текстовый файл названия трех государств с максимальной плотностью населения. |
11, 22 |
Создать двоичный файл, содержащий таблицу с метеорологическими данными некоторого месяца: дата, среднесуточная температура воздуха, скорость ветра, направление ветра, облачность, количество осадков. Вывести в текстовый файл список тех дней, когда выпадали осадки и посчитать их общее количество. Вывести в другой текстовый файл список тех дней, когда среднесуточная температура была больше среднемесячной. |