Работа с текстовыми файлами (Рascal)

Разделы: Информатика, Конкурс «Презентация к уроку»


Презентация к уроку

Загрузить презентацию (6 МБ)


Чтобы переваривать знания,
Нужно поглощать их с аппетитом.
А. Франс

Работа с текстовыми файлами

Предмет: Основы алгоритмизации и программирования.

Группа: 103к.

Специальность: Техник-программист.

Дата проведения: 28 марта 2012 г.

Цель урока:

  • Познакомить учащихся с приемами работы с двумя текстовыми файлами,
  • Научить учащихся считывать данные, выводить на экран данные из файлов, выполнять действия над данными,
  • Развить навыки организации ввода и вывода данных, обработки данных различного типа, решения задач с помощью ЭВМ, реализации информационных процессов посредством ПК,
  • Воспитать последовательность и поэтапность действий, логическое мышление, компьютерную грамотность учащихся.

ТСО: ПК, планшетные компьютеры, принтер, интерактивная доска, мультимедийный проектор.

ПО: Microsoft Word, Microsoft Excel, PascalABC, ActivStudio, Asist2, Microsoft PowerPoint.

Наглядность: презентация “Работа с текстовыми файлами”, электронный журнал группы, электронная игра Домино, электронный учебник “Строки и символы”.

План урока

  1. Организационный момент 3 мин.
  2. Повторение
    a. основных операторов языка Паскаль – Домино 8 мин.
    b. операторов цикла – Карточка 10 мин.
    c. строковых операций – Тест 5 мин.
    d. темы “Строковый тип данных” – Эл.учебник 15 мин.
  3. Объяснение новой темы “Работа с текстовыми файлами” 15 мин.
  4. Закрепление новой темы 15 мин.
  5. Домашнее задание 2 мин.
  6. Подведение итогов урока 7 мин.

Ход урока

I. Организационный момент 3 мин.

Приветствие гостям. Оглашение списка группы. Ознакомление гостей с местом сегодняшней темы по тематическому плану предмета. Ознакомление с целью урока.

II. Повторение
a) основных операторов языка Паскаль – Домино 8 мин.

На экран проецируется игра Домино, состоящая из 10 костей. К доске выходит 1 учащийся, выбирает кость, переносит на игровую площадку, объясняя надписи на кости и причину выбора данной кости.

Домино

END FOR ‘+’, ‘$’, ‘H’, ‘&’ CASE
TO STRING OF REAL
‘OTVET-’ IF 12.9 REPEAT
THEN D[I,J] UNTIL WHILE
ARRAY CHAR DO BEGIN

b) строковых операций 10 мин.

Каждому учащемуся раздаются планшетные компьютеры с тестовой программой. Учащийся выбирает из списка свою фамилию и отвечает на вопросы теста в течении 10 мин. По окончании теста программа выставляет оценку, которую учащийся показывает преподавателю. Преподаватель заносит оценки теста в электронный журнал.

Тест.

1. Какая функция возвращает код символа?
+ ord(x)
– chr(k)
– length(s)
– pos(x,s)
– copy(s,n,k)

2. Какая функция возвращает символ по его коду?
– ord(x)
+ chr(k)
– length(s)
– pos(x,s)
– copy(s,n,k)

3.Какая функция определяет длину строки?
– ord(x)
– chr(k)
+ length(s)
– pos(x,s)
– copy(s,n,k)

4. Какая функция определяет первое вхождение строки х в строку s?
– ord(x)
– chr(k)
– length(s)
+ pos(x,s)
– copy(s,n,k)

5. Какая функция копирует k символов из строки s, начиная с n-ного символа?
– ord(x)
– chr(k)
– length(s)
– pos(x,s)
+ copy(s,n,k)

6. Какая процедура удаляет символы из заданной строки?
+ delete(s,n,k)
– insert(x,s,n)
– length(s)
– pos(x,s)
– copy(s,n,k)

7. Какая процедура вставляет подстроку х в строку s, начиная с символа n?
– delete(s,n,k)
+ insert(x,s,n)
– length(s)
– pos(x,s)
– copy(s,n,k)

8. Как заменить символ "+" на символ "-"?
+ if s[i]='+' then s[i]:='-';
– if s[i]='+' then pos(x,s);
– if s[i]='+' then copy(s,i,k);
– if s[i]='+' then insert(x,s,i);
– if s[i]='+' then delete(s,i,1);

9. Как подсчитать количество символов 'a'?
+ if s[i]='a' then k:=k+1;
– if s[i]='a' then pos(x,s);
– if s[i]='a' then copy(s,i,k);
– if s[i]='a' then insert(x,s,i);
– if s[i]='a' then delete(s,i,1);

10. Что называют строкой?
+ набор символов, заключенных в апострофы
– символ,
– буква,
– цифра,
– число.

c) операторов цикла – Карточка 5 мин.

Учащимся на экране на выбор задаю задачи на цикл с параметром. Каждый учащийся выбирает задачу на выбор вслух, чтобы избежать повторения. На компьютеры загружен текстовый документ-карточка, в котором дается шаблон программы и блок-схемы к задаче. Учащийся заполняет необходимые поля карточки и отправляет документ на печать. Преподаватель получает карточки, проверяет и выставляет оценки в электронный журнал.

Задачи на выбор.

Среди трехзначных чисел найти числа, у которых все цифры равны If (a=b) and (b=c) and (a=c) 111, 222, …999
Среди трехзначных чисел найти числа, у которых крайние цифры равны If a=c 121, 131, …989
Среди трехзначных чисел найти числа, у которых сумма цифр равна 10 If a+b+c=10 109, 118, …910
Среди трехзначных чисел найти числа, у которых сумма цифр делится на 11 If (a+b+c) mod 11=0 119, 128, …994
Среди трехзначных чисел найти числа, у которых сумма цифр равна их произведению If a+b+c=a*b*c 123, 132, 213, 231, 312, 321…
Среди трехзначных чисел найти числа, у которых произведение цифр равно 15 If a*b*c=15 135, 153, …531
Среди трехзначных чисел найти числа, у которых произведение цифр равно 12 If a*b*c=12 126, 134, …621
Среди трехзначных чисел найти числа, у которых сумма первой и третьей цифр равна второй цифре If a+c=b 132, 143, …891
Среди трехзначных чисел найти числа, у которых вторая цифра равна 0 If b=0 101, 102, …909
Среди трехзначных чисел найти числа, у которых вторая и последняя цифра равна 0 If (b=0) and (c=0) 100, 200, …900

Цикл ___________________

Задача №___
Program ABC;
var a,b,c:integer;
begin
writeln('Трехзначные числа, у которых
_______________________________________________________');
writeln;
for a:= __ to __ do
for b:= __ to __ do
for c:= __ to __ do
if __________________________ then writeln('число - ',100*a+10*b+c);
end.
Фамилия, имя:_______________________
 

d)  темы “Строковый тип данных” – Эл. учебник 15 мин.

Учащимся на интерактивной доске предоставляются упражнения электронного учебника по информатике “Строки и символы”.

III. Объяснение новой темы 15 мин.

Работа с текстовыми файлами.

На экран проецируется презентация с объяснением новой темы. Сначала приводятся примеры из жизни на выполнение различных видов статистического учета, сортировки данных по различным условиям на примере простейшего коллектива – группы студентов. Все виды вычислений можно выполнить в табличном редакторе Excel. А как это запрограммировано? Этот вопрос мы рассматриваем на данном уроке.

Задача 1.

Даны 2 файла с фамилиями студентов и их оценками. Вывести список студентов с оценками в убывающем порядке:

Структура программы

Название программы program Kurator;
Раздел описания uses crt;

const n=5;

var

x,y:text;

i,b,k,d:integer;

a,p:string;

f:array [1..n] of string;

g:array [1..n] of integer;

Объявление начала программы begin

clrscr;

Объявление и открытие файлов с данными assign(x,'C:\1.txt');

assign(y,'C:\2.txt');

reset(x);

reset(y);

Чтение данных из файлов

Вывод их на экран

Запись данных в массивы

for i:=1 to n do

begin

writeln;

write(i,' студент – ');readln(x,a);write(a);f[i]:=a;

writeln;

write('оценка – ':11);read(y,b); write(b);g[i]:=b;

writeln;

end;

writeln;

Сортировка элементов двух массивов for k:=1 to n do

for i:=1 to n do

if g[i]<g[k] then

begin

d:=g[k];

g[k]:=g[i];

g[i]:=d;

p:=f[k];

f[k]:=f[i];

f[i]:=p;

end;

Вывод элементов двух массивов по убыванию оценок for i:=1 to n do

begin

write(i, ' студент – ',f[i]:5,' ');

writeln(g[i]);

end;

Конец программы end.

IV. Закрепление новой темы 15 мин.

Задания для самостоятельной работы/

Работа с 2 файлами Работа с 1 файлом
1 Сортировка по возрасту 6 Количество 16-летних
2 Сортировка по годам 7 Количество 17-летних
3 Сортировка по полу 8 Количество отличников
4 Список отличников 9 Количество бюджетников
5 Список ударников 10 Количество девочек

V. Домашнее задание 2 мин.

Решить данную задачу, изменив количество файлов.

VI. Подведение итогов урока 7 мин.

Вопросы на закрепление темы:

  1. Как объявляется текстовый файл?
  2. Как связать переменную с файловой переменной?
  3. Как открыть файл для чтения данных?
  4. Как открыть новый файл для записи данных?
  5. Как открыть файл для добавления данных?
  6. Как считывать данные из файла?
  7. Как создать текстовый файл с данными?
  8. Как записать данные в текстовый файл?
  9. Как записать данные различного типа в текстовый файл?
  10. Как закрыть текстовый файл?
Журнал группы 103
    Домино Тест Шаблон Строки и символы Практика Итоговая оценка
1 Арықбаев Берик 1 1 1 1 0,5 4,5
2 Джамалов Сардор 1 1 1 1 1 5
3 Ким Александра 1 1 1 1 0,5 4,5
4 Кислов Алексей 1 1 1 1 1 5
5 Назир Исмаилбек 1 1 1 1 1 5
6 Нұрбекова Балжан 1 1 1 1 1 5
7 Пустовой Владислав 1 1 1 1 1 5
8 Раушанов Артур 1 1 1 1 1 5
9 Сатаев Рустам 1 1 1 1 1 5
10 Сатаев Расул 1 1 1 1 1 5

Приложение 1. Презентация.

Приложение 2. Символы и строки.

Приложение 3. Тест.

Приложение 4. Звуковой файл.

Приложение 5. Домино.

Приложение 6. Журнал.

Приложение 7. Программа.