10 класс Дата_____________
Урок № ___
Тема: Комбинированный тип данных.
Цели урока:
- образовательная: ввести
понятие «Запись»; рассмотреть основные приемы создания собственных
комбинированных типов данных;
- развивающая: способствовать
развитию умений и навыков решать практические задачи;
- воспитательная: воспитывать
бережное отношение к технике.
Тип урока: комбинированный.
Оборудование: мультимедийная презентация, ПК.
Ход урока
I.
Организационный
момент
Приветствие с учащимися и проверка присутствующих.
II.
Актуализация
опорных знаний
Фронтальный опрос:
1.
Какие типы данных в Pascal
Вам известны?
2.
Может ли переменная
объединять несколько типов данных?
III.
Объяснение нового
материала
Запись —
структурированный тип данных. Записи являются неоднородными неупорядоченными
структурами с прямым доступом к компонентам. Компоненты записи называют полями
записи.
Обычно запись содержит совокупность разнотипных
атрибутов, относящихся к одному объекту.
Например, информация о рекордах по бегу у мужчин для
открытых стадионов может содержать следующие атрибуты
рекордсмен
страна
статус соревнований (Олимпиада, чемпионат мира)
длина дистанции
год рекорда
время
Структурная диаграмма для записи
Запись может быть объявлена в разделе type:
идентификатор типа = Record
поле1: тип;
поле2: тип;
…
полеN: тип
end;
Например,
type beg = record
fam: string[25];
srtana: string[20];
status: boolean; {Олимпиада -
true; чемпионат мира - false}
dlina: longint;
god: 1900..2009;
vr: string[15];
end;
Var a: beg;
К каждому элементу записи можно обратиться, используя
составное имя, которое имеет следующую структуру:
<имя переменной>.<имя поля>
Например,
a.fam; a.dlina и
т.п.
Если, например, требуется полю "status"
присвоить значение «true», то это делается так: status := true;
Поля записи могут иметь любой тип, кроме файла, в
частности, сами могут быть записями.
Например,
type beg1 = record
fam: string[25];
srtana: string[20];
status: boolean; {Олимпиада -
true; чемпионат мира - false}
dlina: longint;
god: 1900..2009;
vr: record min: integer;
sec: real;
end;
end;
Var a: beg1;
Поля такой записи, находящиеся на третьем уровне,
идентифицируются тройным составным именем. Например,
a.vr.min
a.vr.sec
В программе могут использоваться массивы записей.
Любая обработка записей, в том числе ввод и вывод,
производится поэлементно.
Например,
var b: array[1..200] of beg1;
...
write('Число рекордсменов? '); readln(n);
for i:=1 to n do
with b[i] do
begin
write('Фамилия спортсмена? '); readln(fam);
write('Гражданин какой страны спортсмен? '); readln(strana);
write('Статус соревнования? '); readln(status);
write('Длина дистанции? '); readln(dlina);
write('Год
проведения соревнования? '); readln(god);
write('Время, за которое спортсмен пробежал
дистанцию (мин, сек)? '); readln(vr.min, vr.sec);
end;
...
В примере был использован оператор присоединения,
который имеет следующий вид:
with <переменная типа запись> do
<оператор>;
Он позволяет, один раз указав имя переменной типа
"запись" после слова with, работать в пределах одного оператора
(простого или составного) с именами полей как с обычными переменными, т.е. не
писать громоздких составных имен.
IV.
Закрепление
изученного материал
Практическая работа № 16. «Программирование обработки записей»
Ход работы
1.
Инструктаж по ТБ.
2.
Выполнение практической
работы.
V.
Итоги урока
Оценивание работ учащихся.
VI.
Домашнее задание
Проработать конспект и соответствующий параграф
учебника.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.