Запишите примеры в тетрадь.




Тема урока «Комбинированный тип данных. Записи»

Пример 1. Дан файл, содержащий записи о книгах. Сведения о каждой из книг - название книги, фамилия автора, год издания. Программа определяет количество книг, год издания которых меньше или равен 1980.

PROGRAM EX_3;

Type

Book=record {тип - запись}

Title: string[40]; {наименованиекниги}

Author: string[40]; {автор}

Entry: integer; {годиздания}

end;

ff= file of book; {тип - файлзаписей}

Var

s: longint; {сумма искомых книг}

k: book; {переменная - запись}

log_f: ff; {переменная - файл записей}

BEGIN

s:=0;

Assign(log_f,'bibliot.dat');

reset(log_f);

while not eof(log_f) do

begin

read(log_f,k);

ifk.entry<=1960 then s:=s+1;

end;

Writeln('Книг изданных ранее 1960 года включительно ',s);

END.

Пример 2. На экзаменационном листе содержатся сведения о результатах экзаменов, сданных 30 учениками класса. Ввести эти данные в компьютер и получить список всех отличников.

В программе используется описание комбинированного типа results. Исходные данные организуются в массив следующей структуры.

Var list: array[1..30] ofresults;

После ввода в этот массив исходных данных следует фрагмент программы:

Программа отбирает записи, в которых все поля с оценками равны 5, и выводит соответствующие поля фамилий.

Подготовим текстовый файл следующего вида:

Таблица содержит данные с фамилиями и оценками 30 учеников класса. Обратите внимание на то, что фамилии записываются в отдельных строках. Необходимость этого связана с реализацией алгоритма: при вводе символьной строки прочитывается полностью очередная строка текстового файла до признака EOLN. При этом фамилии должны содержать не более 15 символов, а первые оценки (по русскому языку) — располагаться не раньше 16-й позиции в своей строке.

Сохраним этот файл в корневом каталоге логического диска Е под именем 10_a.txt. Составим программу с вводом таблицы успеваемости и выводом списка отличников. Фамилии отличников выведем на экран и сохраним в файле с именем Best.txt.

Пример 3. Решая рассмотренную задачу с оценками, можно обойтись без массива записей. Кроме того, можно не ставить ограничения на число учеников в классе. Их число выяснится в процессе чтения файла с таблицей успеваемости. Составим программу, которая кроме вывода списка фамилий отличников подсчитает их количество и процент отличников по отношению к полному составу класса.

В этой программе переменная I используется как счетчик числа учеников, а переменная К — как счетчик числа отличников.

Стандартная логическая функция EOF (endoffile) примет значение True, когда процесс чтения из файла дойдет до его конца.

В результате выполнения программы кроме списка отличников на экран выведется строка:

Из 30 учеников в классе 10 отличников, что составляет 33,3%

Рассмотрите теорию, просмотрев презентацию.

Запишите примеры в тетрадь.

Письменно ответьте на вопросы:

1. Что такое тип данных запись?

2. Как объявляются записи?

3. Что такое уточнённое имя?

4. Какие операции допустимы над элементами (полями) записи?

5. Чем отличается запись от массива?

6. Каково назначение оператора присоединения?

7. Что такое записи с вариантами?

8. Как используются записи?

Работы пришлите на электронную почту karolinuhka@gmail.com



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-06-05 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: