Контрольные работы индивидуально, без посредников http://shitokryto.ru ICQ: 482030413 Mail: [email protected] Mob.: 89082204152 Министерство образования Российской Федерации Томский государственный университет систем управления и радиоэлектроники Кафедра автоматизированных систем управления (АСУ) Контрольная работа по дисциплине Структуры и алгоритмы обработки данных на ЭВМ Выполнил: Специальность: Программное обеспечение вычислительной техники и АСУ. Код и пароль: Адрес: E-mail: Принял: преподаватель А.Н. Горитов Дата выполнения: Тема: Файлы. Пусть файлы А и В, компоненты которых являются целыми числами, упорядочены по неубыванию. Получить в файл С все числа А и В без повторений. Файл С должен быть упорядочен по возрастанию. Алгоритм решения задачи: Описываем файловый тип (типизированный файл) и файловые переменные (A, B, C, СС), и переменные для работы с элементами. Конечно, можно было бы обойтись и тремя файловыми переменными (А, В и С без СС) выполнив операцию по удалению повторений элементов из С в А или в В. Описываем процедуру создание исходных файлов А и В, упорядоченных, согласно условия задачи, по неубыванию. Ввод длины файла и его элементов осуществляется поэлементно с экрана и записывается в соответствующий файл. Описываем процедуру вывода файла на экран для просмотра. В основной программе сначала устанавливаем связь файловых переменных с соответствующими файлами. Затем вызовом процедуры Making_File c соответствующим фактическим параметром создаём файлы А.TXT и B.TXT. Устанавливаем указатели в начала файлов А и В для чтения и в начало файла С для записи в файл. Считываем первые элементы файлов А и В. Поскольку исходные файлы упорядочены по неубыванию слияние выполняем следующим образом: - сравнив считанные два элемента из А и В, записываем в С меньший из них; - из файла, элемент которого перенесён в С считываем следующий элемент. Эти действия выполняем циклически пока не закончится один из файлов. Из оставшейся на момент окончания одного файла пары элементов (ja и jb) первым записываем меньший, вторым больший, а затем весь "хвост" оставшегося файла (А или В). Созданный файл С выводим для просмотра на экран процедурой OutFileOnScreen. Для исключения повторений элементов в файле С переписываем элементы кроме повторений в файл СС (чтобы не использовать четвёртый файл можно воспользоваться файлом А), затем результат выводим на экран для просмотра. Закрываем файлы и ждём разрешения на окончание. Условие задачи выполнено. Текст программы: Program FileSortingByMerge; Uses crt; Type IntegerFile=file of integer; Var Выводы. Последовательные файлы - одна из наиболее фундаментальных структур данных. Следует отметить особенности типизированных и текстовых файлов. Текстовые файлы удобны для восприятия человеком, типизированные соответствуют машинному представлению объектов, они как правило более компактны. Число компонентов не фиксируется при определении файла. Это обстоятельство - одно из самых существенных отличий файлов от массивов. Другое существенное отличие - последовательный доступ к элементам файла. Файлы не являются оперативной структурой и располагаются во внешней памяти. Над файлами выполняются два явных вида действия - чтение из файла и запись в файл. Вся работа с файлами организуется на оснве этих операций. Если необходим действующий файл программы – реквизиты для связи: ICQ 482030412 Skype nikosimych Mail: [email protected] Mobil: 89082204152