Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Основные алгоритмы работы с файлами
Для записи данных в файл нужно выполнить:
1. Описать переменную типа ofstream.
2. Открыть файл для записи с помощью функции open.
3. Вывести информацию в файл с помощью cout.
4. Обязательно закрыть файл.
Для чтения данных из текстового файла нужно выполнить:
1. Описать переменную типа ifstream.
2. Открыть файл для чтения с помощью функции open.
3. Считать информацию из файла с помощью cin при считывании каждой порции данных необходимо проверять, что чтение возможно.
4. Закрыть файл.
Пример 7. Работа с файлом в потоковом режиме.
#include "stdafx.h"#include <iostream>using namespace std;#include <fstream>int _tmain(int argc, _TCHAR* argv[]){ int n = 50; char str[20]; // Открываем файл для вывода ofstream ofs("Test.txt"); // Проверка корректности открытия файла if (!ofs) cout << "Файл не открыт.\n"; else { ofs << "Hello!\n" << n; // Закрываем файл ofs.close(); } // Открываем тот же файл для ввода ifstream file("Test.txt"); // Проверка корректности открытия файла if (!file) cout << "Файл не открыт.\n"; else { file >> str >> n; cout << str << "\n" << n; // Закрываем файл file.close(); } system("pause"); return 0;}
Задания для выполнения
1. Определить, какая буква чаще всего встречается в заданном файле.
2. Удвоить в содержимом файла каждую литеру.
3. Подсчитать число цифр в данном файле и их сумму.
4. Определить переменную "студент", содержащую следующие поля: имя, фамилия, отчество студента, название института, номер группы. Данные считать из текстового файла. Вывести данные о студентах, которые учатся в одном и том же заданном институте и в одной заданной группе.
5. При выполнении задания используйте работу с файлами с помощью потоков. Найдите в файле все строки с максимальной длиной. Выведите их на экран и укажите длину. Выполните чтение их входного файла только один раз.
6. Индивидуальные задания. Решите задачу двумя способами. Создать текстовый файл с произвольной информацией. Организовать просмотр содержимого файла. Организовать чтение и обработку данных из файла в соответствии с индивидуальным заданием. Сохранить полученные результаты в новый текстовый файл.
Вариант
| Задание
| 1.
| «Зоопарк»:
Название животного; количество вида; адрес зоопарка (почтовый индекс, страна, область, район, город, улица, дом, квартира); общее количество животных, количество работников. Вывести сведения про зоопарки, в которых есть уссурийские тигры.
| 2.
| «Телохранитель»:
фамилия; имя; отчество; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); дата рождения (год, месяц число). Вывести данные про старшего телохранителя”.
| 3.
| «Международная компания»:
название; интернет сайт; адрес главного офиса (почтовый индекс, страна, область, район, город, улица, дом, квартира) продолжительность пребывания на мировом рынке; количество сотрудников; количество филиалов в Европе. Вывести международные компании, количество сотрудников у которых больше 10000.
| 4.
| «Манекенщица»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира). Вывести данные про самую молодую манекенщицу.
| 5.
| «Футболист»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; название команды; номер в команде; амплуа; результативность (количество голов); количество игр. Вывести сведения про футболистов, которые провели за свою команду больше 50 матчей.
| 6.
| «Пенсионер»:
фамилия; имя; отчество; пол; национальность; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира). Вывести сведения про всех пенсионеров, которые на пенсии больше 5 лет.
| 7.
| «Ученый»:
фамилия; имя; отчество; пол; национальность; дата рождения (год, месяц число); ученая степень, должность, номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира). Вывести сведения про ученых кандидатов технических наук.
| 8.
| «Программист»:
фамилия; имя; отчество; пол; национальность; дата рождения (год, месяц, число); образование; номер телефона. Вывести сведения о программистах, которым меньше 25 лет.
| 9.
| «Здание»:
адрес; тип здания; количество этажей; количество квартир; срок эксплуатации; срок до капитального ремонта (25 лет - срок эксплуатации). Вывести данные про здания срок эксплуатации, которых больше 50 лет.
| 10.
| «Книга»:
название; автор (фамилия; имя); год выхода; издательство; себестоимость; цена; прибыль. Вывести данные про книги авторов, фамилия которых начинается с буквы “К”.
| 11.
| «Рейс»:
марка автомобиля; номер автомобиля; пункт назначения; грузоподъемность (в тоннах); стоимость единицы груза; общая стоимость груза. Вывести данные про автомобили, грузоподъемность которых больше 2 тонн.
| 12.
| «Кинолента»:
название; режиссер (фамилия; имя); год выхода; страна; стоимость; доход; прибыль. Вывести данные про фильмы режиссера Ежи Гофмана.
| 13.
| «Товар»:
наименование; стоимость; срок хранения; сорт; дата выпуска; срок годности. Вывести данные про товары срок годности которых истекает в этом году.
| 14.
| «Автомобиль»:
марка; цвет; серийный номер; регистрационный номер; год выпуска; год техосмотра; цена. Вывести данные про автомобили, которым больше 2 лет.
| 15.
| «Государство»:
название страны; столица; государственный язык; население; площадь территории; денежная единица; государственный строй; глава государства. Вывести данные про государства, население которых больше 20 млн жителей.
| 16.
| «Абитуриент»:
фамилия; имя; отчество; пол; национальность; дата рождения (год, месяц число); домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); оценки по экзаменам; проходной балл. Вывести данные про абитуриентов, проходной балл которых равен больше 4.
| 17.
| «Владелец телефона»:
фамилия; имя; отчество; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); № телефона. Вывести данные про владельцев телефона номер, которого начинается на 720.
| 18.
| «Рабочий»:
фамилия; имя; отчество; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); национальность; дата рождения (год, месяц число); № цеха; табельный номер; образование; год поступления на работу. Вывести данные про рабочих, поступивших на работу в 2010 году.
| 19.
| «Военнослужащий»:
фамилия; имя; отчество; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); национальность; дата рождения (год, месяц число); должность; звание. Вывести данные про военнослужащих в звании “лейтенант”.
| 20.
| «Владелец автомобиля»:
фамилия; имя; отчество; номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира) марка автомобиля; номер автомобиля; номер техпаспорта. Вывести данные про автомобили марки «Ваз».
| 21.
| «Пациент»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); номер больницы; отделение; номер медицинской карты; диагноз; группа крови. Вывести данные про пациентов с 18 отделения.
| 22.
| «Покупатель»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); номер кредитной карточки; банковского счета.
Вывести данные о покупателях с города Тула.
| 23.
| «Студент»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); ВУЗ; курс; группа; средний бал; специальность. Вывести сведения про всех студентов у которых средний балл ниже 70 баллов.
| 24.
| «Школьник»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира); школа; класс. Вывести сведения про всех учеников пятых классов.
| 25.
| «Человек»:
фамилия; имя; отчество; пол; национальность; рост; вес; дата рождения (год, месяц число); номер телефона; домашний адрес (почтовый индекс, страна, область, район, город, улица, дом, квартира). Вывести сведения о самом молодом человеке.
| 26.
| «Кондитер»:
фамилия; имя; отчество; пол; национальность; дата рождения (год, месяц, число); образование; номер телефона. Вывести сведения о кондитерах-женщинах.
| 27.
| «Блогер инстаграма»:
Название аккаунта; автор (фамилия; имя); количество подписчиков; количество подписок; прибыль. Вывести данные про блогера, который зарабатывает больше всех.
|
|