Конспект урока на тему "Файловый тип данных"

  • Разработки уроков
  • doc
  • 20.06.2017
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Разработанный конспект урока для школьного профильного курса информатики на тему «Файловый тип данных» позволяет легко и доступно, а также понятно объяснить учащимся тему «Файловый тип данных в Turbo Pascal» линии алгоритмизации. Данный урок является первым в цикле уроков по данной теме.
Иконка файла материала файловый тип данных.doc
Тема: Файловый тип данных. Цель: познакомить  учащихся  с файловыми типами данных. Задачи:          ­ объяснить понятие файловый тип данных;          ­ показать различие физического и логического файлов;   ­ контроль над усвоением знаний отстающих учеников; Тип урока: усвоение нового материала. Оборудование: раздаточный материал, ПК с программным обеспечением – язык программирования Turbo Pascal. Формы и методы: фронтальная, коллективная, наглядный, практический,  объяснительный, иллюстративный, проблемно поисковый. План : I. Изучение нового материала. 1. Основные сведения о файлах 2. Классификация файлов II. Итог урока. Домашнее задание. Ход у р о к а I. Изучение нового материала. 1. Основные сведения о файлах. Ранее мы рассматривали задачи, в которых во время выполнения программ данные поступали с клавиатуры, а результаты выводились на экран дисплея. Поэтому ни исходные данные, ни результаты не сохранялись. Всякий раз при выполнении   одной   и   той   же   программы,   особенно   во   время   ее   отладки, приходится заново вводить исходные данные. А если их очень много? В языке Тurbo  Раsса1 есть возможность записать их на  диск. Для этого необходимооформить исходные данные и результаты в виде файлов, которые хранятся на диске точно так же, как и программа. У понятия файл есть две стороны. С одной стороны,  файл  ­  это область  памяти  на внешнем носителе,  в которой хранится некоторая информация. В него можно поместить данные или   извлечь   их   оттуда.  Файл  в   таком   понимании  называют   физическим файлом,  то   есть   существующим   физически   на   некотором   материальном носителе информации.  файл   ­   это   одна   из   многих   структур   данных, С   другой   стороны, используемых   в   программировании.   Файл  в   таком   понимании  называют логическим   файлом,  то   есть   существующим   только   в   нашем   логическом представлении при написании программы. Структура   физического   файла  представляет   собой  простую последовательность байт памяти носителя информации ­ ЖМД или ГМД. Байт Байт Байт ... Байт Байт Байт Структура логического файла ­ это способ восприятия файла в программе. Образно   говоря,   это   "шаблон"   ("окно"),   через   который   мы   смотрим   на физическую структуру файла. В языках программирования таким "шаблонам" соответствуют типы данных, Допустимые в качестве компонент файлов.  Например: File of byte Байт Байт Байт ... Байт Байт EOF File of char Код Код Код … Код Код ЕОF Символа Символа Символа Символа Символа Логическая структура файла в принципе очень похожа на структуру массива. Различия между массивом и файлом заключаются в следующем.У   массива   количество   элементов   фиксируется   в   момент   распределения памяти,   и   он   целиком   располагается   в   оперативной   памяти.   Нумерация элементов массива выполняется соответственно  нижней и верхней границам при его объявлении. У файла количество элементов в процессе работы может изменяться, и он располагается   на   внешних   носителях   информации.  Нумерация   элементов файла выполняется слева направо, начиная от нуля (кроме текстового). Коли­ чество элементов в каждый момент времени неизвестно. Зато известно, что в конце файла располагается специальный символ конца файла, определяемый функцией ЕОF. 2. Классификация файлов. Файлы классифицируются по двум признакам: По  методу доступа ­ последовательный,  прямой доступ. По   типу   (логической   структуре)  ­   типизированные,   текстовые, нетипизированные. Файл   последовательного   доступа   можно   сравнить   с   довольно   длинной магнитофонной лентой в кассете, на которой записаны  песни (или какая­то информация).   Для   того,   чтобы   найти   конкретную   песню,   надо   перемотать кассету на начало и прослушивать песню за песней до тех пор, пока не будет найдена нужная. Переменные файлового типа могут быть описаны в программе либо явно в разделе переменных Var, либо с использованием раздела типов Туре. Объявление файлов в разделе переменных имеет вид: Var<имя файла>: Type of<базовый тип элементов>. Например: Var Ft: file of integer; {файл целых данных}         М:File of Char; {файл символьных данных} О п и с а н и е  ф а й л о в  с помощью раздела типов имеет такой вид:Type Fil1=file of integer;          Fil2=file of char; Var f1:fill;        f2:fil2; Элементами файла F1 могут быть целые числа, а F2 ­ символы. У   таких   файлов   указывается   тип   их   элементов,   они   называются типизированными. Все компоненты имеют общее имя, а каждый еще и имеет свой номер. Начальный элемент имеет нулевой номер. 3. Операции над файлами.  1. Связь переменной файлового типа с конкретным внешним файлом В  Тurbо Раsса1 файл является некоторой переменной, как и  любая другая переменная,   поэтому   ему   можно   присвоить   имя.   С   другой   стороны, существует операционная система, которая в свою очередь использует имена файлов, например, А: ММ.Dаt,  В: Теst.Раз. Для установления связи между переменной­файлом   в  Тurbо   Раsса1     и   именем   файла,   присваиваемого операционной системой, имеется стандартная процедура Аssign. Общий вид: Аssign (<имя переменной­файла>,'<имя внешнего файла>'); Процедура   устанавливает   соответствие   между   файловой   переменной   и внешним файлом. Например, Аssigп(F1, 'а:int.dat '); Такое соответствие обозначает, что все операции, выполняете над переменной F1,   будут   выполняться   над   файлом,  хранящимся   на   диске   А   и   имеющим имя’Int.dat’. 2. Открытие, чтение, запись. Перед   выполнением   каких­либо   операций   чтения   и   записи   в   файлах   эти файлы должны быть открыты.Открытие   файлов   выполняется   процедурами  RESET(f)   и  REWRITE(f),  а закрытие – процедурой CLOSE(f). Процедура  RESET(f) открывает существующий физический файл, который был связан с файловой переменной/. Если  f  ­   текстовый   файл,   то   он   доступен   только   для   чтения   при последовательном доступе к элементам. Если f­ типизированный файл, то он будет открыт и для чтения, и для записи как   при   последовательном   доступе,   так   и  при   прямом.   При   открытии указатель текущей позиции файла устанавливается в его начало. Процедура  REWRITE(f)  создает   новый   физический   файл,   имя   которого связано с файловой переменной f. Если такой файл уже существует, то он удаляется, и на этом месте создается новый   пустой   файл.   При   открытии   указатель   текущей   позиции   в   файле устанавливается в его начало. Под   чтением   файла   понимается   ввод   данных   из   внешнего   файла, находящегося   на   диске,   в  оперативную   память   машины.  Данные   внешнего файла становятся доступными программе. Чтение из типизированных файлов выполняется только процедурой  READ (<имя   переменной­файла   >,   <элемент   >),   а   запись   только   процедурой WRITE(<имя переменной­файла>, <элемент>). Элемент должен быть того же типа, что и компоненты файла. Выполняя запись в файл, следует помнить, что при записи каждой переменной указатель текущей позиции в файле, так же, как   и   при   чтении,   перемещается   на   следующий   элемент,   если   указатель текущей позиции файла находится за последним элементом, то есть в конце файла, то при выполнении процедуры WRITE файл расширяется. Если   оператор   ввода   имеет   вид  Read(<элемент>),   то   данные   вводятся   с клавиатуры,   а   если  Read(<имя   переменной­файла>,<элемент>),   то   данные вводятся из файла, хранящегося на диске.Если оператор вывода имеет вид  Write(<элемент>), то данные  выводятся на экран дисплея, а если Write(<имя переменная ­файла>,<элемент>), то данные записываются в файл, который хранится на диске. После работы с файлом его закрытие обязательно. 3.Закрытие файла Процедура С1оsе(<имя переменной файла>). 4.Признак конца файла Так как, по определению, число элементов файла не задается заранее, то в языке Тurbо Раsса1   введен признак конца файла. Это логическая функция: ЕОF(<имя   переменной­файла>).   Она   используется   для   определения, достигнут ли конец файла или еще нет (принимает истинное значение (TRUE), если достигнут конец  файла, и ложное (FALSE) ­ в противном случае). Для определения конца файла используется оператор цикла, например, (пока не достигнут конец файла...): While  Not EOF (<имя переменной­файла>) dо...  Пример. Прочитаем файл целых чисел и выведем их на экран: Аssigп(F1, 'а'.int.dat');{связываем с внешним файлом}  Reset(F1); {открываем его для чтения} While not EOF(f1) do {пока не достигнут конец файла F1}  begin Read (F1,n); {считываем очередное число}  Write  (n, ''); {выводим его на экран}  епd; С1оse(F1); {закрываем файл} еnd; Примечания:После   выполнения   процедур   открытия   файла   для   чтения   или  для   записи (Reset  или  ReWrite)   текущий   указатель   "смотрит"   на  первый   элемент, например, Reset(F1): После   выполнения   процедуры  Read,   например,  Read(F1,х),   если   указатель стоял на k­м элементе, то после выполнения он будет стоять на следующем, а значение переменной х будет равно k­му элементу. Пример 1. Открыть файл  Urok1.txt и сохранить в нем N целых чисел в пределах от 65 до 90: а) б) считайте информацию из данного файла; найдите сумму элементов, находящихся в файле F86.txt