Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Чтение данных из текстового файла






Выборка данных из текстового файла может быть произведена с помощью функции fscanf, обращение к которой в общем виде выглядит следуюшим образом:

[a n]=fscanf(f_id, 'format', m);

Здесь:

a — принимающий массив, в элементы которого заносятся считываемые данные;

n — количество фактически считанных значений;
f_id — номер открытого файла;

format — список форматных указателей, в соответствии с которыми осуществляется преобразование считываемых данных;

m — количество запрашиваемых данных.

Обязательными параметрами в этом обращении являются массив а, идентификатор файла f_id и хотя бы один форматный указатель в списке format. Отсутствие количества запрашиваемых значений или константа Inf в качестве третьего параметра воспринимаются как задание прочитать данные до конца файла. Если количество запрашиваемых значений задано числом m, то считываемые данные размещаются в векторе-столбце размерности mx1. Но, указав количество запрашиваемых данных в виде вектора [р q], можнопрочитать данные из файла в матрицу размерности pxq.

k=fopen('a.txt', 'wt'); % открыли файл для вывода

a=(magic(5)) % сформировали магический квадрат

n=fprintf(k, '%3d', a)%записали массив в файл

fclose(k); %закрыли файл

k=fopen('a.txt', 'rt'); %открыли файл для чтения

[d1 n]=fscanf(k, '%d', [5 5])%читаем матрицу 5х5

frewind(k); %вернули указатель файла в начало

[c n]=fscanf(k, '%d', 5)%считали первый столбец

[c1 n]=fscanf(k, '%d', 5)%считали следующие 5 значений

fclose(k)%закрыли файл

 

a =

17.00 24.00 1.00 8.00 15.00

23.00 5.00 7.00 14.00 16.00

4.00 6.00 13.00 20.00 22.00

10.00 12.00 19.00 21.00 3.00

11.00 18.00 25.00 2.00 9.00

n =

75.00 %количество байтов, записанных в файл

 

d1 =

17.00 24.00 1.00 8.00 15.00

23.00 5.00 7.00 14.00 16.00

4.00 6.00 13.00 20.00 22.00

10.00 12.00 19.00 21.00 3.00

11.00 18.00 25.00 2.00 9.00

n =

25.00

c =

17.00

23.00

4.00

10.00

11.00

n =

5.00

c1 =

24.00

5.00

6.00

12.00

18.00

n =

5.00

ans =

Задание для лабораторной работы №6

1.Составить файл-функцию для вычисления кусочно-заданной функции

2.Для массива x вычислить значения массива y, записать их в текстовый файл на диске.

3.Прочитав значения из текстового файла, построить график функции, используя функцию fplot.

 

Содержание отчета

1. Цель работы.

2. Описание операторов, используемых для выполнения задания.

3. Листинг файла-сценария и результаты работы программы, график функции.

4. Ответы на контрольные вопросы.

Контрольные вопросы

1. Какими операциями ограничивается работа с файлами?

2. Какие форматы представления данных используют внешние носители?

3. В чем состоит подготовка файла к работе?

4. Какой входной аргумент определяет режим доступа к открываемому файлу?.

5. Как завершить работу с файлом?.

6. Функция вывода данных в текстовый файл.?

7. Какие преобразования необходимы с данными для записи в файл? Символы указателей формата.

8. Функция чтения данных из текстового файла?

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.