D.9. Лабораторная работа № 9
Тема: Создание и обработка двоичных файлов. Цель: Написание и отладка программ на обработку двоичных файлов.
Файл – это область на внешнем запоминающем устройстве (ВЗУ) большой емкости, предназначенная для хранения однотипной информации. Область имеет имя, которое обычно хранится в каталоге ВЗУ. В двоичных файлах могут быть записаны целые, вещественные числа и другие данные. При обработке информации, записанной в двоичный файл, очень часто допускаются грубые ошибки, обусловленные тем, что сначала содержимое файла (например, массив или матрица) переписывают в ОЗУ ЭВМ. Если файл большого размера (а размер файла ограничивается объемом ВЗУ, на несколько порядков превышающем объем оперативной памяти), он просто не уместится в ОЗУ. Выполняя данную работу следует организовать поэлементную загрузку и обработку данных в ОЗУ, и запись результата обработки в файл. Для выполнения лабораторной работы № 9 необходимо изучить следующие вопросы: · Понятие файла, способы объявления файловых структур; · Процедуры открытия файла для записи и чтения, процедура закрытия файла; · Процедуры, осуществляющие передвижение файлового указателя по файлу, а также чтение и запись данных файла. В условиях заданий «СА» – обозначает среднее арифметическое, «СГ» – среднее геометрическое. Варианты заданий 1. В квадратной матрице, находящейся в файле, подсчитать «СА» положительных элементов каждого сектора. В файле первая компонента – размер матрицы, далее – элементы построчно. 2. В прямоугольной матрице, находящейся в файле, подсчитать «СА» отрицательных элементов строк (по каждой строке в отдельности). В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 3. В квадратной матрице, находящейся в файле, найти максимальный и минимальный элементы и заменить элементы главной диагонали на максимальный элемент, побочной – на минимальный элемент. В файле первая компонента – размер матрицы. 4. В прямоугольной матрице, находящейся в файле, найти минимальные и максимальные элементы строк. В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 5. В прямоугольной матрице, находящейся в файле, найти максимальные и минимальные элементы столбцов. В файле первая компонента – размер строки, вторая – размер столбца, далее элементы построчно. 6. Отсортировать числовой массив в файле в порядке неубывания. В файле первая компонента – размер массива, далее – элементы массива. 7. Отсортировать числовой массив в файле в порядке невозрастания. В файле первая компонента – размер массива, далее элементы массива. 8. Расположить элементы числового массива в файле в обратном порядке. В файле первая компонента – размер массива, далее – элементы массива. 9. В квадратной матрице, находящейся в файле, найти минимальные элементы каждого сектора. В файле первая компонента – размер матрицы, далее элементы построчно. 10. Элементы числового массива, находящегося в файле, расположить в следующем порядке: сначала – все положительные, затем – все нулевые, потом – все отрицательные. В файле первая компонента – размер массива, далее элементы. 11. В квадратной матрице, находящейся в файле, найти максимальные элементы каждого сектора. В файле первая компонента – размер матрицы, далее элементы построчно. 12. Из числового массива, находящегося в файле, сформировать файл, содержащий массив, в котором сначала записаны номера всех положительных элементов исходного массива, затем – номера всех отрицательных элементов, далее – номера всех нулевых элементов. В файлах первая компонента – размер массива, далее элементы массива. 13. В прямоугольной матрице, находящейся в файле, подсчитать «СА» отрицательных элементов столбцов (по каждому столбцу в отдельности). В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 14. В квадратной матрице, находящейся в файле, найти минимальные и максимальные элементы диагоналей. В файле первая компонента – размер матрицы, далее – элементы построчно. 15. В прямоугольной матрице, находящейся в файле, подсчитать «СА» положительных элементов строк (по каждой строке в отдельности). В файле первая компонента – размер строки, вторая - размер столбца, далее – элементы построчно. 16. В квадратной матрице, находящейся в файле, подсчитать «СА» элементов расположенных ниже главной диагонали. В файле первая компонента – размер матрицы, далее – элементы построчно. 17. В квадратной матрице, находящейся в файле, подсчитать количество не нулевых элементов, расположенных ниже побочной диагонали. В файле первая компонента – размер матрицы, далее – элементы построчно. 18. В прямоугольной матрице, находящейся в файле, расположить элементы строк в порядке неубывания. В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 19. В прямоугольной матрице, находящейся в файле, расположить элементы строк в порядке невозрастания. В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 20. Из прямоугольной матрицы, находящейся в файле, сформировать файл, содержащий массив из сумм положительных элементов строк матрицы. Во входном файле первая компонента – размер строки, вторая - размер столбца, далее – элементы построчно. В выходном файле первая компонента – размер массива, далее – элементы. 21. Из прямоугольной матрицы, находящейся в файле, сформировать файл, содержащий массив из сумм отрицательных элементов столбцов матрицы. Во входном файле первая компонента – размер строки, вторая - размер столбца, далее – элементы построчно. В выходном файле первая компонента – размер массива, далее – элементы. 22. Из целочисленного массива, находящегося в файле, сформировать файл, содержащий массив, элементы которого характеризуют частоту встречаемости целых чисел в диапазоне от 0 до 255 в исходном массиве. Во входном и выходном файлах первая компонента – размер массива, далее – элементы. 23. Из двух целочисленных массивов, расположенных в файлах, сформировать массив, расположенный в файле, элементы которого характеризуют частоту встречаемости элементов второго массива среди элементов первого массива. В файлах первая компонента – размер массива, далее – элементы. 24. В прямоугольной матрице, находящейся в файле, поменять местами строки с четными и нечетными номерами. В файле первая компонента – размер строки, вторая – размер столбца, далее – элементы построчно. 25. В прямоугольной матрице, находящейся в файле, поменять местами столбцы с четными и нечетными номерами. В файле первая компонента – размер строки, далее – элементы построчно.
|