Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Программирование C++ 2014n.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
979 Кб
Скачать
☆

Ifstream идентификатор_потока(имя_файла,ключи_потока);

Например:

ifstream input("input.txt",ios::in);

Здесь открывается файловый поток с идентификатором input для чтения из файла. Такой файловый поток должен быть по аналогии с Си обязательно закрыт: input.close();

Файловый поток для записи открывается так:

Ofstream идентификатор_потока(имя_файла,ключи_потока);

Например:

ofstream output("output.txt",ios::out);

Этот поток также должен быть закрыт:

output.close();

Как же работать с такими потоками? Очень просто:

int main()

{

int n,k;

float f;

char str[100];

ifstream input("input.txt",ios::in);

ofstream output("output.txt",ios::out);

input>>n;

input>>k;

n=n+k;

output<<n<<endl;

input>>f;

f=f+2;

output<<f<<endl;

input>>str; output<<str<<”, “;

input>>str; output<<str<<”!!”;

input.close();

output.close();

return 0;

}

Если исходным содержимым файла input.txt было следующее:

5

10

-5.56783345

Hello world!

то в файл output.txt запишется следующее:

15

-3.56783

Hello, world!!!

Лабораторная работа № 15 Исследование методов доступа к файлам данных

ЦЕЛЬ РАБОТЫ: совершенствование навыков в программировании с использованием указателей, исследование функций последовательного и прямого доступа к файлам.

Выполнение работы: в соответствии с вариантом составить и реализовать программы.

Задание I

1. Работа с неструктурированными данными

Для исследования различных методов доступа к файлам данных необходимо выполнить следующие подготовительные действия:

    1. Создать в Блокноте следующий текстовый файл:

У меня спросили: сколько будет x Опер y ?

А я не знаю! А n Опер k ? Тоже!

Помогите!

Например:

У меня спросили: сколько будет 7 * 2 ?

А я не знаю! А 9 / 4 ? Тоже!

Помогите!

    1. Вам известна структура файла. Вывести содержимое файла на экран, а в выходной файл записать результаты:

x Опер y = Рез1

n Опер k = Рез2

Например:

7 * 2 = 14

9 / 4 = 2.25

    1. Исходные данные берутся из таблицы согласно варианта:

Вар.

x

Опер

y

n

Опер

k

Вар.

x

Опер

y

n

Опер

k

1

15

+

4

7

*

8

9

23

+

37

13

*

5

2

18

-

19

18

/

4

10

7

-

42

37

/

6

3

9

*

6

56

-

37

11

34

*

3

14

-

53

4

23

/

5

31

+

29

12

21

/

5

11

+

77

5

7

+

23

14

/

4

13

12

+

25

20

/

6

6

34

-

67

11

*

3

14

15

-

72

54

*

2

7

21

*

2

20

+

11

15

18

*

4

7

+

55

8

12

/

5

54

-

32

16

9

/

18

18

-

81

    1. Исследовать возможность решения этой задачи с использованием трех способов:

  • функциями последовательного доступа к файлам;

  • функциями прямого доступа к файлам;

  • файловыми потоками С++.

    1. Сделать выводы о целесообразности использования того или иного метода считывания или записи данных в файл.