Презентация "Файловый ввод - вывод данных в Pascal" 11 класс

Подписи к слайдам:
Файловый ввод-вывод данных в Pascalе Средства обработки файлов 11 класс

Дугина Ирина Радиковна, учитель информатики и ИКТ,

МБОУ СОШ с.Камышки Александрово-Гайского района

Саратовской области

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

Особенности:

а) файл имеет имя;

б) файл содержит компоненты одного типа (файл строк, файл записей)

в)объем файла не оговаривается в программе ;

Типы файлов Турбо Паскаль Турбо Паскаль поддерживает три типа файлов:
  • текстовые файлы;
  • типизированные файлы;
  • нетипизированные файлы.
  • Файл, в описании которого указывается тип элементов, называется типизированным. Все элементы файла пронумерованы начиная с нуля.(базы данных) Текстовый файл представляет собой последовательность символов разбитую на строки. Каждая строка заканчивается маркером конца строки. Нетипизированные файлы рассматриваются как совокупность символов и байтов, не имеют определенного типа.
Средства обработки файлов
  • установить связь программы с файлом;
  • "открыть" файл для чтения или записи;
  • считать из файла или записать в файл;
  • закрыть файл.

В программе на Паскале текстовый файл представлен файловой переменной типа TEXT.

Var <имя файловой переменной>: text;

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

Assign (имя файловой переменной, имя файла на диске);

Имя файла на диске больше нигде в программе не появляется. <Имя файла на диске> должно содержать полный путь для поиска данного файла. Если полный путь к файлу не указан, то файл будет искаться в каталоге, где находится исходный текст программы.

Открытие файла для чтения выполняется оператором

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

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

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

Если на диске нет файла с данным именем, то файл будет создан.

Установка связи программы с файлом

Для установления связи переменной и файла

служит процедура

Assign(<имя файловой переменной>,’<имя файла на диске>’);

Например: Assign (f,‘input.txt’);

Assign (g,’output.txt’);

Описание файловой переменной

Var

<имя файловой переменной>: text ;

Например:

Var

f,g:text;

“Эсайгн”

Открытие файла для чтения или записи
  • Для чтения из файла необходимо открыть файл для чтения с помощью процедуры RESET(<имя файловой переменной>);
  • Например: Reset (f);
  • Для записи в файл открываем файл для записи с помощью процедуры
  • REWRITE(<имя файловой переменной>); Например: Rewrite (g);
Чтение из файла. Запись в файл.
  • Чтение данных из файла выполняется процедурой
  • READ (<имя файловой переменной>,’<имя переменной>); Например: Read (f,a,b);
  • Запись данных в файл выполняется процедурой
  • WRITE(<имя файловой переменной>, <значение>); Например: Writeln(g,c);
Закрытие файлов После того как данные из файла прочитаны, его необходимо закрыть посредством процедуры CLOSE (<имя файловой переменной>); Например: Close (f);

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

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

Например: Close (g);

Примеры программ
  • Program geron;          var           a,b,c:integer;          s,p:real;          f,g:text;
  •    begin          assign(f,'input.txt');          reset(f);          readln(f,a,b,c);          close(f);          assign(g,'output.txt');          rewrite(g);          if(a+b>c)and (a+c>b)and(b+c>a) and (a>0)and(b>0)and(c>0) then begin          p:=(a+b+c)/2;          s:=sqrt(p*(p-a)* (p-b)* (p-c));          writeln (g,s:12:6);      end          else writeln(g,-1);          close(g); end.

Нахождение площади треугольника по формуле Герона.

Примеры программ Program F; var rArg, rF: Array[1..200] of Real; inf: Text; outf: Text; n, l: Integer; begin Assign(inf,'ID.txt'); Assign(outf,'RD.txt’); Reset(inf); Rewrite(outf); n:=0; while not EOF(inf) do begin n:=n+1; ReadLn(inf,rArg[n],rF[n]) end; for l:=1 to n do begin WriteLn(l:2,rArg[l]:8:2,rF[l]:8:2); Write(outf,rArg[l], rF[l]); end; close(outf); end.

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

1.Даны три целых числа.

Определить, имеется ли среди них хотя бы

одна пара равных между собой чисел.

Формат входных данных

Входной файл содержит три целых числа через пробел.

Формат выходных данных

Выведите 'YES' если это так, и 'NO' в противном случае.

Примеры:

Вход

544 935 911

Выход

NO

1. Program vetvlenie;          Var          a,b,c:integer;          f,g: text;

begin          assign (f,'input.txt');          reset (f);          readln (f,a,b,c);          close (f);

         assign (g,'output.txt');          rewrite (g);          if (a=b) or (b=c) or (c=a) then          writeln (g,'YES')          else          writeln (g,'NO');          close(g);

end.

Закрепление Задача №2 из «Задачника по PascalABC.NET» Адаптировать к файловому вводу-выводу данных. Использованные источники:
  • Turbo Pascal, В.Б.Попов,Москва, 2002г.
  • «Программирование на языке Паскаль», А.И.Епанешников, 2009г.