Тема: Читання з файла Цель: Учебная: отработать навыки применения процедуры работы с текстовыми файлами посредством решения задач Воспитательная: Формировать навыки принятия решений, бережное отношение к технике и информации. Развивающая: развивать логическое мышление, поддерживать постоянный интерес к исследуемому предмету и стремление к усвоению новых знаний. Ход урока I. Организационный момент II. Проверка домашнего задания Вопросы по домашнему заданию. Кратковременная с/р по задачам 1. Создать файл f, компоненты которого являются целыми числами. Распечатать этот файл. Program n181; {При этом создан файл .txt, имя которого вводится с клавиатуры} var name:string; x,i:integer; f:file of integer; Begin Writeln('vvedite ima file'); readln(name); assign(f,name); rewrite(f); for i:=1 to 5 do {5 чисел} Begin x:= random(100); Write(f,x); End; writeln('sodergimoe file f'); reset(f); While not eof(f) do begin read(f,x); write(x,' '); end; close(f); end. 2. Создать файл f, компоненты которого являются целыми числами. Найти сумму компонент файла. Program n182; var name:string; S,x,i:integer; f:file of integer; Begin Writeln('vvedite ima file'); readln(name); assign(f,name); rewrite(f); for i:=1 to 5 do Begin x:= random(1000); Write(f,x); End; writeln('sodergimoe file f'); reset(f); While not eof(f) do begin read(f,x); writeln(x,' '); s:=s+x; end; Writeln('summa komponent=',S); close(f); end. III. Новая тема Вспомним процедуру, которая готовит файл для чтения Reset(f) и непосредственно считывает компоненты файла, начиная с позиции Read(f, x). Какое условие позволит определить, является ли компонент файла четным числом? If x mod 2 =0 Каким образом нужно организовать подсчет четных чисел? S=S+1 в цикле, если значение вышеуказанного логического выражения равно истина. 1. Дан файл f, компоненты которого являются целыми числами. Найти количество четных чисел среди компонент файла. Program n185; var S,x,i:integer; f1:text; Begin assign(f1,'erty.txt'); reset(f1); S:=0; While not eof(f1) do begin read(f1,x); if x mod 2=0 then S:=S+1; end; Writeln('summa chetnih=',S); close(f1); end. 2. Дан файл f, компоненты которого являются целыми числами. Записать в файл g все четные числа файла f, а в файл h – все нечетные. Порядок следования чисел сохраняется. Program n185; var name:string; S,x,i:integer; f,g,h:text; Begin assign(f,'erty.txt'); assign(g,'res1.txt'); assign(h,'res2.txt'); reset(f); Rewrite(g); Rewrite(h); While not eof(f) do begin read(f,x); if x mod 2=0 then Begin Append(g); Write(g,x) end else Begin Append(h); Write(h,x) end; end; close(f); close(h); close(g); end. IV. Постановка домашнего задания 1. Дан файл f, компоненты которого являются действительными числами. Найдите: (в) сумму квадратов компонент файла f; (г) модуль суммы и квадрат произведения компонент файла f. V. Итог урока