Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Министерство образования Республики Беларусь
Учреждение образования: Белорусский государственный университет транспорта
Кафедра «Информационные технологии»
Отчёт по лабораторной работе №21
«Файловый ввод/вывод в C++»
Выполнил: студент гр. ЭT-21 Шелег В. Н. |
Проверил: преподаватель Ненахов Ю. В. |
Цель работы: изучить методы работы с файловым интерфейсом с помощью стандартных поточных классов языка C++, особенности их применения, главные преимущества использования при создании программ.
Задание:
Задание 1. Написать программу с использование объектов cout и cin, которая запрашивает с клавиатуры 6 вещественных чисел, записывает эти числа в массив, а затем записывает их в текстовый файл textdata.
Задание 2. Написать программу, которая считывает числа из текстового файла textdata и печатает их на экране с тремя знаками после запятой.
Задание 3. Модернизировать программу, составленную при выполнении задания 1 из ЛР №20, таким образом, чтобы сгенерированные числа записывались в бинарный файл binarydata.
Задание 4. Написать программу, которая открывает бинарный файл binarydata, печатает все числа из этого файла, печатает максимальное и минимальное из значений этих чисел. Имя файла, который необходимо открыть для чтения, является аргументом программы при вызове ее из командной строки. В программе должна осуществляться проверка наличия аргумента-имени файла в командной строке и проверка при открытии этого файла для чтения. В случае ошибки программа должна печатать соответствующее сообщение и завершать работу.
($ ./4 binarydata )
Задание 5. Переработать программу, созданную в задании 5 (ЛР№20), заменив функции ввода/вывода языка С на функции языка С++ во всей программе.
Ход выполнения работы:
1. Необходимо продумать структуру внешнего файла с которым будут производится операции.
2. Изучаем особенности предоставленного поточного класса (его методы, свойства, манипуляторы, пространство имён).
3. Создаем в соответствии со структурой файла соответствующие алгоритмы чтения и записи, подразумевая под файлом конечную точку доступа алгоритма к файлу – потоковый класс.
4. Реализуем полученные алгоритмы на алгоритмическом языке с применением объектно – ориентированного подхода к файловой обработке (C++).
5. Добавляем полученные функции к основной программе (в которой производится вычислительная часть, работа с файлами является интерфейсной частью между операционной системой и программой).
6. Компилируем, отлаживаем и собираем полученный код.
Выводы :
1. Файловый интерфейс стандартных классов ввода-вывода – объектно ориентированная технология платформенно-независимого доступа к файлам.
2. Т. к. применяются естественные в использовании перегруженные операции и манипуляторы для вывода информации на внешний накопитель, либо в консоль, снижается количество ошибок времени исполнения, при несооблюдении типов и количества параметров при использовании стандартных функций библиотеки stdio.h.
3. Подпрограмма файловой обработки в основном алгоритме приобретает большую степень прозрачности и читабельности.
Путидоступа:
\\fs\students\et21\shyelyegbj \Lab21\
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.