Государственное бюджетное образовательное учреждение
средняя общеобразовательная школа №559
Выборгского района Санкт-Петербурга
Конспект урока по информатике и ИКТ
в 11 классе
«Текстовые файлы»
подготовила
учитель информатики и ИКТ
Галялутдинова Дамира Сиразитдиновна
Санкт-Петербург
2014
Класс: 11
Раздел: Информатика и ИКТ
Тема урока: «Текстовые файлы»
Тип урока: Лекционно-практический урок.
Цели урока:
Изучить файловые процедуры и функции в языке программирования Pascal.
Изучить способы создания текстовых файлов.
Научиться решать задачи на текстовые файлы с числовой информацией.
Оборудование: компьютеры, проектор, экран.
Ход урока:
Организационный момент.
На прошлых занятиях мы рассматривали типизированные файлы. Научились создавать файлы и работать с ними. Сегодня мы познакомимся с текстовыми файлами.
Текстовые файлы состоят из строк. В строках могут быть числа, символы, вся строка может быть типа string.
Для создания текстового файла можно воспользоваться любым текстовым редактором, работающим в среде MS DOS. Язык Pascal имеет свой встроенный текстовый редактор. Все свои программы вы набираете именно в текстовом редакторе. Поэтому самый простой способ создания текстового файла это в новом окне набрать текст и сохранить его под любым именем с расширением txt.
Для работы с данным текстом нужно связать файловую переменную.
В разделе описания переменных мы пишем: var f: text;
Служебное слово text говорит о том, что файловая переменная будет связана с текстовым файлом. Для работы с текстовыми файлами нам понадобятся дополнительные процедуры и функции. На слайде представлены процедуры, которые мы уже изучили при работе с типизированными файлами. Они необходимы и для текстовых файлов. И две процедуры, которые применимы только для текстовых файлов.
assign(f,’полное имя файла’)
reset(f)
read(f,n)
rewrite(f)
write(f,n)
close(f)
erase(f)
readln(f) (readln(f,n) )
writeln(f) ( writeln(f,n) )
При работе с текстовыми файлами будем использовать две логические функции.
eof(f) (конец файла)
eoln(f) (конец строки)
Сегодня рассмотрим задачи на текстовые файлы, в строках которых числа.
Дан текстовый файл, в строках числа.
Подсчитать количество четных чисел в каждой строке.
Прежде всего надо создать такой файл. В новом окне в строках наберем целые числа (количество чисел в строках может быть произвольным) и сохраним файл под именем dan.txt.
5 4 36 2 3 4
1 3 45 68
34 5 8 7 9 26 86
var f: text;
n, k, l: integer;
begin assign(f,’dan.txt’);
reset(f);l:=0;
while not eof(f) do
begin l:=l+1; k:=0;
while not eoln(f) do
begin read(f,n);
if n mod 2=0 then k:=k+1;
end;
writeln (‘количество четных в ‘,l,’строке=’,k);
readln(f);
end;
close(f); readln;
end.
Рассмотрим аналогичные задачи.
Что нужно изменить в программе, чтобы выполнялась первая задача. if n >0 then k:=k+n;
if n <0 then k:=k+n;
if n mod 2=0 then k:=k+n;
if n mod 2=1 then k:=k+n;
if n mod 3=0 then k:=k+n;
Что нужно изменить и добавить в программе, чтобы выполнялась вторая задача.
var f: text;
n, k, l: integer; s:real;
begin assign(f,’dan.txt’);
reset(f);l:=0;
while not eof(f) do
begin l:=l+1; k:=0; s:=0;
while not eoln(f) do
begin read(f,n);s:=s+n;
k:=k+1;
end;
s:=s/k;
writeln (‘сред.ариф. в‘,l,’строке=’,s:6:2);
readln(f);
end;
close(f); readln;
end.
Работа у доски.
Измените программу так, чтобы выполнялась третья задача.
var f: text;
n, k, l: integer; s:real;
begin assign(f,’dan.txt’);
reset(f);l:=0;
while not eof(f) do
begin l:=l+1; k:=0; s:=0;
while not eoln(f) do
begin read(f,n);
if n mod 2=0 then begin s:=s+n;
k:=k+1;
end;
end;
if k>0 then s:=s/k;
writeln (‘сред.ариф.четных в‘,l,’строке=’,s:6:2);
readln(f);
end;
close(f); readln;
end.
Данную программу наберите на компьютере и запустите на выполнение. Напоминаю еще раз, что сначала нужно создать текстовый файл.
Домашнее задание. Написать программы к задачам:
Список использованной литературы
Фаронов В.В. Turbo Pascal 7.0. Практика программирования, М.: Кнорус, 2012 г.
Меженный О.А. Turbo Pascal. Самоучитель, Вильямс, Диалектика, 2008г
Культин Н. Turbo Pascal в задачах и примерах,С-Пб.: БХВ-Петербург, 2006 г