МИНИСТЕРСТВО образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ
ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
УТВЕРЖДАЮ
Проректор-директор ИК
____________
«____»_____________2012 г.
Файловый ввод-вывод в C++
Методические указания по выполнению лабораторных работ
по курсу Программные средства математических расчётов»
для студентов направления 220000 – «Мехатроника и робототехника»,
Издательство
Томского политехнического университета
2012
УДК 519.6
ББК 00000
А00
в авторской редакции
А00 Файловый ввод-вывод в C++. Методические указания по выполнению практических работ по курсу «Программные средства математических расчётов» для студентов I курса, обучающихся по направлению 220000 – «Мехатроника и робототехника» / . – Томск: Изд-во Томского политехнического университета, 2012. – 8 с.
УДК 519.6
ББК 00000
Методические указания рассмотрены и рекомендованы к изданию методическим семинаром кафедры интегрированных
компьютерных систем управления ИК
«1» сентября 2012 г.
Зав. кафедрой ИКСУ
доктор технических наук _________________
Председатель учебно-методической
комиссии _________________
Рецензент
Доцент ИКСУ ИК НИ ТПУ кандидат технических наук
© ФГБОУ ВПО «Национальный
исследовательский
Томский политехнический
университет», 2012
© , 2012
© Оформление. Издательство Томского
политехнического университета, 2012
Файловый ввод-вывод
Цель работы. Научиться записывать информацию в файл и считывать её из файла.
Теоретическая часть
Файл – это именованная область на диске для хранения различных данных (символьных или числовых).
Заголовочный файл iostream. h определяет классы istream и ostream (входной и выходной поток). Аналогично заголовочный файл fstream. h определяет классы ifstream и ofstream (входной и выходной файловый поток). Для вывода данных в файл используется выходной файловый поток ofstream, при этом указывается имя файла в виде символьной строки.
Пример 1. Запись информации в файл.
#include <fstream. h>
void main()
{
// на диске создается файл с именем text. txt
ofstream file ( ”c:\\temp\\text. txt” );
file << “Tomsk “ << endl; // в файл заносится
// информация
file << ”2006 “ << endl;
file. close(); // закрытие файла
}
В результате на диске с: в папке temp создается файл с именем “text. txt”, который содержит 2 строки:

Для чтения из файла используется входной поток ifstream и указывается имя файла, из которого будет считываться информация.
Пример 2. Чтение информации из файла “text. txt”.
#include <iostream. h>
#include <fstream. h>
#include <conio. h>
void main()
{
ifstream vvod ( “c:\\temp\\text. txt“ );
char one[10], two[20];
vvod. getline ( one, sizeof(one));
vvod. getline ( two, sizeof(two));
cout << one << endl;
cout << two << endl;
vvod. close();
getch();
}
Результат работы программы:

Здесь функция getline использована для ввода строки из файла. Если файл не нужен, используется функция закрытия файла, например, vvod. close(). Для чтения из файла необязательно использовать функцию getline.
Пример 3. Записать в файл массив чисел. Прочитать числа из файла и определить их количество
#include <iostream. h>
#include <fstream. h>
#include <iomanip. h>
#include <conio. h>
void main()
{
int i, n, kol = 0, x;
ofstream file ( “f. txt” );
cout<<”Vvedite kolichestvo chisel: ”;
cin >> n;
for ( i = 0 ; i < n ; i++ )
{
cin >> x;
file << x << “ ”;
}
file. close();
ifstream vvod ( “f. txt”);
int mas[100] ;
i = 0 ;
do
{
vvod >> mas[i];
i++;
}
while ( !vvod. eof ()); /*чтение из файла пока не встретился конец файла (eof) (eof – end of file) */
vvod. close ();
kol = i-1;
cout << “Prochitano ” << kol << “ chisel :\n” ;
for ( i = 0 ; i < kol ; i++ )
cout << setw (5) << mas[i];
getch();
}
Результат работы программы:

Здесь при записи в файл используется переменная х, в которую данные поступают с клавиатуры и выводятся в файл. При чтении чисел из файла они заносятся в массив mas.
Варианты заданий к лабораторной работе № 10
Вариант 1. Записать в файл F действительные числа. Прочитать данные из файла и найти сумму квадратов компонент файла.
Вариант 2. Записать в файл F действительные числа. Прочитать данные из файла, поменять местами первую и последнюю компоненты файла и занести их в файл G.
Вариант 3. Записать в файл F действительные числа. Прочитать данные из файла и найти количество компонент файла F, значение которых больше 1, но меньше 5.
Вариант 4. Записать в файл F действительные числа. Прочитать данные из файла и найти наибольшее из значений компонент.
Вариант 5. Записать в файл F действительные числа. Прочитать данные из файла и найти наименьшее из значений компонент.
Вариант 6. Записать в файл F действительные числа. Прочитать данные из файла и найти количество четных компонентов.
Вариант 7. Записать в файл F действительные числа. Прочитать данные из файла, найти компоненты, являющихся простыми числами и занести их в файл G.
Вариант 8. Записать в файл F целые числа. Прочитать данные из файла, подсчитать количество компонентов, являющихся квадратами нечетных чисел.
Вариант 9. Записать в файл F целые числа. Прочитать данные из файла и найти количество удвоенных нечетных компонент.
Вариант 10. Записать в файл F целые числа. Прочитать данные из файла и переписать все четные компоненты в файл G.
Вариант 11. Записать в файл F целые числа. Прочитать данные из файла и переписать все числа, делящиеся на 3, но не делящиеся на 5, в файл G.
Вариант 12. Записать в файл F слова. Прочитать данные из файла и найти слова, оканчивающиеся на букву «r».
Вариант 13. Записать в файл F целые числа. Прочитать данные из файла и найти среднее арифметическое нечетных компонентов.
Вариант 14. Записать в файл F слова. Прочитать данные из файла и найти слова из 5 букв.
Вариант 15. Записать в файл F вещественные числа. Прочитать данные из файла и записать в файл G целые части этих чисел.
Содержание отчета
· цель работы;
· задание;
· код программы;
· блок-схема;
· результаты работы программы;
· выводы по работе.
Список литературы
1. Голуб. Правила программирования на C и С++. Пер. с англ.: – М.: Вильямс, 2001. – 241 с.
2. С/С++. Программирование на языке высокого уровня. – СПб.: Питер, 2010.
3. Язык программирования С++. Лекции и упражнения. СПб.: Питер, 2003. – 645 с.
Учебное издание
МАМОНОВА Татьяна Егоровна
ФАЙЛОВЫЙ ВВОД-ВЫВОД В С++
Методические указания по выполнению лабораторных работ
по курсу «Программные средства математических расчётов»
для студентов I курса, обучающихся по направлению 220000 – «Мехатроника и робототехника».
Отпечатано в Издательстве ТПУ в полном соответствии
с качеством предоставляемого оригинал-макета
Подписано к печати 03.09.2010.Формат 60х84/16.
Бумага «Снегурочка».
Печать XEROX. Усл. печ. л. 9, 01. Уч.- изд. л. 8, 16.
Заказ. Тираж
г. Томск, пр. Ленина, 30
Тел./, www. tpu. ru


