Презентация по информатике по теме "Файловый тип данных" (11 класс)
Оценка 4.8

Презентация по информатике по теме "Файловый тип данных" (11 класс)

Оценка 4.8
Домашняя работа +2
pptx
информатика
11 кл
05.11.2017
Презентация по информатике по теме "Файловый тип данных" (11 класс)
Текстовый документ с практической работой
Файловый тип данных_ОВ.pptx

Файловый тип данных в Turbo Pascal

Файловый тип данных в Turbo Pascal

Файловый тип данных в Turbo Pascal

В английском языке слово "file" имеет вполне понятный смысл: "вереница", что очень хорошо отражает внутреннюю структуру любого файла.
Файл - это именно вереница символов, причем связанных в определенной последовательности: символы файла не могут по своему желанию перепрыгивать с одного места на другое.

Евграфова Ольга Владимировна, 2017 год

Общие положения Множества значений или переменных с одним общим именем называются структурированными (составными) типами

Общие положения Множества значений или переменных с одним общим именем называются структурированными (составными) типами

Общие положения

Множества значений или переменных с
одним общим именем называются структурированными (составными) типами.

Основные разновидности структурированных типов:
регулярный тип (массивы);
строки (одномерный массив из символов);
комбинированный тип (записи);
файловый тип (файлы);
множественный тип (множества).

Описание Файл – это область памяти на внешнем носителе, в которой хранится некоторая информация

Описание Файл – это область памяти на внешнем носителе, в которой хранится некоторая информация

Описание


Файл – это область памяти на внешнем носителе, в которой хранится некоторая информация.

В языке Паскаль файл представляет собой последовательность элементов одного типа.
В файлах последовательного доступа, чтобы получить доступ к элементу, необходимо последовательно просмотреть все предыдущие.

Объявление файловой переменной

Объявление файловой переменной

Объявление файловой переменной

Турбо Паскаль поддерживает три файловых типа: текстовые файлы, типизированные файлы, нетипизированные файлы.

VAR <имя>: FILE OF <тип>;
Например:
VAR SPISOK1: FILE;
VAR IMENA: FILE OF CHAR;
VAR SPISOK2: TEXT;

В разделе описания переменных:

TYPE DETI = RECORD
fio: STRING[25];
god: INTEGER;
END
VAR class: FILE OF DETI;

В разделе описания типов:

текстовый файл

типизированный файл

нетипизированный файл

Файл, в описании которого указывается тип элементов, называется типизированным

Файл, в описании которого указывается тип элементов, называется типизированным

Файл, в описании которого указывается тип элементов, называется типизированным. Все элементы файла пронумерованы начиная с нуля.
С каждым файлом связан так называемый файловый указатель. Это неявно описанная переменная, которая указывает на некоторый элемент файла. Все операции производятся с элементом, на который указывает файловый указатель.

(0)

(1)

(k)

(…)

(k+1)

(…)

Файловый указатель

Обработка файлов Связь переменной с файлом на диске

Обработка файлов Связь переменной с файлом на диске

Обработка файлов

Связь переменной с файлом на диске.
Чтение из файла.
Запись в файл.
Закрытие файла.
Пример №1.
Пример №2.
Текстовые файлы.
Домашнее задание

Операции с файлами Отождествление физического файла с файловой переменной в программе

Операции с файлами Отождествление физического файла с файловой переменной в программе

Операции с файлами

Отождествление физического файла с файловой переменной в программе

ASSIGN (имя файловой переменной, имя файла);

Например:
Имя файловой переменной: spisok
Физическое имя файла: klass11A.txt
Тогда перед работой с файлом нужно выполнить процедуру:
ASSIGN (spisok, ‘ klass11A.txt ’);

Чтение из файла. Под чтением из файла понимается пересылка данных из внешнего файла, находящегося на диске, в оперативную память

Чтение из файла. Под чтением из файла понимается пересылка данных из внешнего файла, находящегося на диске, в оперативную память

Чтение из файла.

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


2) чтение данных из файла осуществить процедурой:


Примечание: переменные должны иметь тот же тип, что и компоненты файла.

READ (имя файловой переменной, список переменных);

RESET (имя файловой переменной);

Запись в файл. Под записью в файл понимается вывод результатов программы из оперативной памяти

Запись в файл. Под записью в файл понимается вывод результатов программы из оперативной памяти

Запись в файл.

Под записью в файл понимается вывод результатов программы из оперативной памяти ЭВМ в файл на диске.
Для записи в файл необходимо
1) открыть файл для записи процедурой


2) запись данных в файл осуществить процедурой


После работы с файлом его необходимо закрыть.

REWRITE (имя файловой переменной);

WRITE (имя файловой переменной, список значений);

если такого файла не существует, он будет создан;
если файл с таким именем уже есть, вся содержавшаяся в нем ранее информация исчезнет;

Закрытие файла. После того как данные из файла прочитаны, его необходимо закрыть посредством процедуры

Закрытие файла. После того как данные из файла прочитаны, его необходимо закрыть посредством процедуры

Закрытие файла.

После того как данные из файла прочитаны, его необходимо закрыть посредством процедуры


Признак конца файла.
Так как число элементов файла заранее не известно, необходимо уметь определять, что файл закончился. Для этого используется логическая функция


Она принимает истинное значение (True), если достигнут конец файла, и ложное (False) – в противном случае.

CLOSE (имя файловой переменной);

EOF (имя файловой переменной);

Пример 1 ……. Assign(F1, ‘A:\INT

Пример 1 ……. Assign(F1, ‘A:\INT

Пример 1

…….
Assign(F1, ‘A:\INT.DAT’);
{связываем файловую переменную с файлом на диске}
Reset(F1); {открываем файл для чтения}
While Not EOF(F1) Do
{пока не достигнут конец файла F1}
Begin
Read (F1, n); {считываем очередное число}
Write (n, ‘ ‘); {выводим его на экран}
End;
Close (F1); {закрываем файл}
……

Прочитать из файла целые числа и вывести их на экран:

Пример 2 Program Exampl_2; Var

Пример 2 Program Exampl_2; Var

Пример 2

Program Exampl_2;
Var F: File Of Integer;
n: Integer;
Begin
Assign (F, ‘DAN1.DAT’); {связываем файловую переменную
с файлом на диске}
Rewrite(F); {открываем файл для записи}
Writeln (‘Конец ввода чисел – 0’);
Repeat {пока не будет введен 0}
Writeln (‘Введите число’);
Readln(n); {Если введено число, отличное от 0, то записываем его в файл}
If n<>0 Then Write(F, n);
Until n=0; {Если введен 0, то выходим их цикла}
Close (F);
End.

Ввести с клавиатуры и записать в файл DAN1.DAT последовательность целых чисел. Признак конца ввода чисел - 0.

Текстовые файлы Текстовые файлы – это файлы, содержащие символы, разделенные на строки

Текстовые файлы Текстовые файлы – это файлы, содержащие символы, разделенные на строки

Текстовые файлы

Текстовые файлы – это файлы, содержащие символы, разделенные на строки.
Строки могут иметь различную длину, и в конце каждой строки стоит признак конца строки.
Для их описания используется служебное слово Text.
Var A: Text;
Для обработки текстовых файлов используются те же процедуры и функции, что и для обработки обычных типизированных файлов.


Обработка текстовых файлов Для связывания файловой переменной с файлом на диске употребляется процедура

Обработка текстовых файлов Для связывания файловой переменной с файлом на диске употребляется процедура

Обработка текстовых файлов

Для связывания файловой переменной с файлом на диске употребляется процедура Assign.
Для чтения данных применяется процедура Read.
Если необходимо после чтения данных перейти на следующую строку, то используется процедура Readln.
Процедура Write записывает данные в текущую строку.
Если надо записать данные и перейти к следующей строке, то можно использовать процедуру Writeln, которая записывает в файл признак конца строки и устанавливает файловый указатель на начало следующей строки.

Продолжение Так как в строках может быть разное количество символов, имеется логическая функция:

Продолжение Так как в строках может быть разное количество символов, имеется логическая функция:

Продолжение

Так как в строках может быть разное количество символов, имеется логическая функция:


Функция принимает значение True, если достигнут конец строки.
Кроме перечисленных процедур и функций, к текстовым файлам применяется процедура


Она открывает файл для "дозаписи", помещая файловый указатель в конец файла.

Eoln (<имя файловой переменной>);

Append (<имя файловой переменной>);

Пример 3 Создать текстовый файл, содержащий только целые числа (в каждой строке может быть несколько чисел), которые разделяются пробелом

Пример 3 Создать текстовый файл, содержащий только целые числа (в каждой строке может быть несколько чисел), которые разделяются пробелом

Пример 3

Создать текстовый файл, содержащий только целые числа (в каждой строке может быть несколько чисел), которые разделяются пробелом. Вывести на экран все числа с учетом разбиения на строки и подсчитать количество элементов в каждой строке.

Пусть в файле содержится информация: 1 2 3 4 5 6 7 -1 -2 -3 -4 -1 -2

Пусть в файле содержится информация: 1 2 3 4 5 6 7 -1 -2 -3 -4 -1 -2

Пусть в файле содержится информация:
1 2 3 4 5 6 7
-1 -2 -3 -4
-1 -2
Этот файл можно создать:
Создать новый файл (меню File команда New).
Записать все числа в строках через пробелы.
Сохранить его, например, A:\UNT1.TXT
Или написать программу для создания текстового файла.

Решение Program Example_3; Var

Решение Program Example_3; Var

Решение

Program Example_3;
Var F: Text; x, k: Integer;
Begin
Assign (F, 'UNT1.TXT'); {Связываем файловую
переменную с файлом на диске}
Reset (F); {Открываем файл для чтения}
While Not Eof(F) Do {Пока не достигнут
конец файла}
Begin
k:=0; {Счетчик элементов строки}
While Not Eoln(F) Do {Пока не конец строки}
Begin
Read(F, x) ; {Считываем очередное число}
Write(x,' '); {Выводим его на экран}
Inc(k); {Увеличиваем счетчик чисел}
End;
Writeln( ' В строке ', k, ' элементов') ;
Readln(F); {Переходим к следующей
строке файла}
End;
Close(F); {Закрываем файл}
Readln;
End.

Самостоятельная работа Задача 1

Самостоятельная работа Задача 1

Самостоятельная работа

Задача 1. Cформировать случайным образом 10 вещественных чисел (интервал от –15 до 20) и сохранить данные с точностью до тысячных на диске в текстом файле. Прочитать данные из файла и найти сумму. Полученную сумму дописать в файл.


Решение….

Задача 2. В текстовом файле f

Задача 2. В текстовом файле f

Задача 2. В текстовом файле f.txt записаны (вперемешку) целые числа: поровну отрицательных и положительных. Переписать в текстовый файл h.txt все эти числа так, чтобы: порядок отрицательных чисел был сохранен; порядок положительных чисел был сохранен; любые два числа, стоящие рядом, имели разные знаки.

Решение….


Задача 3. В текстовом файле f1

Задача 3. В текстовом файле f1

Задача 3. В текстовом файле f1.txt записан зашифрованный русский текст. При шифровании каждую букву заменили на следующую за ней букву («я» заменяется на «а»). Получить в новом файле f2.txt расшифровку данного текста. Для упрощения будем считать, что текст записан строчными буквами.

Решение….

Способ №1 Program z1; var f: text;

Способ №1 Program z1; var f: text;

Способ №1

Program z1;
var f: text; A, s: real; n, k: integer;
begin
assign( f, ’number.dat’ );
rewrite( f )
{запись данных в файл}
randomize;
for n:=1 to 10 do begin
a:= 36*random-15;
writeln( f, a:10:4 ); end;
close(f);
s:=0;
{вывод данных из файла}
reset( f );
while not eof( f ) do begin
readln(f ,a);
s:=s+a; end;
close(f);
append(f);
writeln(f, a:10:4);
close(f);
end.

Способ №2

Program z1;
A, s : real; n, k: integer;
begin
assign( output,’number.dat’);
rewrite( output )
{запись данных в файл}
randomize;
for n:=1 to 10 do begin
a:= 36*random-15;
writeln( a:10:4 ); end;
close(output); s:=0;
{вывод данных из файла}
assign( input,’number.dat’);
reset( input );
while not eof(input) do begin
readln(a);
s:=s+a; end;
close(input);
append(output);
writeln(a:10:4);
close(output);
end.

Рrogram z2; var f, g, h: text; k: integer; begin assign(f,'f

Рrogram z2; var f, g, h: text; k: integer; begin assign(f,'f

Рrogram z2;
var f, g, h: text; k: integer;
begin
assign(f,'f.txt'); assign(g,'g.txt'); assign(h,'h.txt');
{Переписываем положительные числа в доп.файл} reset(f); rewrite(g);
while not eof(f) do begin
read(f, k); if k>0 then write(g, k,' '); end;
{Собираем числа в новый файл h.txt}
reset(f);
{Возвращаем указатель на начало файла f} reset(g); rewrite(h);
while not eof(g) do begin
read(g, k); write(h, k, ' ');
repeat read(f,k) until k<0;
write(h,k,' '); end;
close(f); close(g); close(h); end.

Считываем очередной символ} k:=pos(sim1,al); {Номер позиции в переменной al} if k<>1 then sim2:=al[k-1] else sim2:=al[33]; write(g,sim2); {Запись нового символа в файл} end; close(f); close(g);

Считываем очередной символ} k:=pos(sim1,al); {Номер позиции в переменной al} if k<>1 then sim2:=al[k-1] else sim2:=al[33]; write(g,sim2); {Запись нового символа в файл} end; close(f); close(g);

program zf1;
var f, g :text; al :string[33]; k :integer; sim1,sim2: char;
begin
assign(f,'f1.txt'); assign(g,'f2.txt');
reset(f); rewrite(g);
al:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
while not eof(f) do begin
read(f,sim1); ; {Считываем очередной символ}
k:=pos(sim1,al); {Номер позиции в переменной al}
if k<>1 then sim2:=al[k-1]
else sim2:=al[33];
write(g,sim2); {Запись нового символа в файл}
end;
close(f); close(g);
End.

Домашнее задание_1 Заполнить файл последовательного доступа

Домашнее задание_1 Заполнить файл последовательного доступа

Домашнее задание_1

Заполнить файл последовательного доступа F целыми числами, полученными с помощью генератора случайных чисел. Получить в файле G те компоненты файла F, которые являются четными числами.
Заполнить файл последовательного доступа А целыми числами, полученными с помощью генератора случайных чисел. Получить в файле G все компоненты файла F, которые делятся на T и не делятся на P.
Записать в файл F последовательного доступа N натуральных чисел. Получить в другом файле последовательного доступа все компоненты файла F, кроме тех, которые кратны K. Вывести полученный файл на печать.
Заполнить файл f целыми числами, полученными с помощью генератора случайных чисел. Найти количество удвоенных нечетных чисел среди компонентов файла.

Домашнее задание_2 Создать файл и записать в него последовательность целых чисел (положительных и отрицательных)

Домашнее задание_2 Создать файл и записать в него последовательность целых чисел (положительных и отрицательных)

Домашнее задание_2

Создать файл и записать в него последовательность целых чисел (положительных и отрицательных). Для следующей части задачи количество чисел и диапазон значений чисел в файле неизвестно.
Подсчитать количество четных чисел в этом файле.
Найти среднее значение отрицательных чисел.
Сформировать файл, состоящий из тех чисел исходного файла, которые кратны 5, но не делятся на 10.
Сформировать файл, состоящий из тех чисел исходного файла, которые являются двузначными числами.
Найти наименьшее положительное число в файле.
Найти наибольшее четное число в файле.



Домашнее задание_3 В текстовом файле f

Домашнее задание_3 В текстовом файле f

Домашнее задание_3

В текстовом файле f.txt записаны (вперемешку) целые числа: поровну отрицательных и положительных. Переписать в текстовый файл h.txt все эти числа так, чтобы: порядок отрицательных чисел был сохранен; порядок положительных чисел был сохранен; любые два числа, стоящие рядом, имели разные знаки.
В текстовом файле содержится следующая информация об успеваемости учеников класса по информатике. В каждой строке записана фамилия, имя ученика и его оценки по информатике (разделителем является пробел). Например:
Новосельцев Дмитрий 4 3 5 5 5
Ученики могут иметь разное количество оценок.
Сформировать новый файл, в который нужно записать фамилию, имя ученика и среднюю оценку по информатике.

Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
05.11.2017