Комбинированный тип данных. Информацию о номере дома, названии улицы и городе в единое целое и назвать адресом, а объединенную информацию о дне, месяце.

Презентация:



Advertisements
Похожие презентации
Записи Структурированный тип. Type =record end; Запись – структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. Поля.
Advertisements

Записи Структурированный тип. Type =record end; Запись – структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. Поля.
Записи Комбинированный тип. Запись – структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. Поля записи могут быть.
Тема: Комбинированный тип данных. Цель:. Комбинированный тип данных – это структурированный тип, состоящий из фиксированного числа компонент разного типа.
Структуры (записи) Программирование на языке Паскаль.
1 Пример: Для каждого из 25 учеников класса известны фамилия и оценки (в баллах) по пяти дисциплинам. Требуется вычислить среднюю оценку каждого ученика.
Программирование на языке Паскаль ЗАПИСИ в Паскале (RECORD)
Статичні структури даних.. 2 Статические данные переменная (массив) имеет имя, по которому к ней можно обращаться размер заранее известен (задается при.
Записи 1.Повторение структуры данных МАССИВ 2.Определение структуры данных ЗАПИСЬ 3.Описание типа данных ЗАПИСЬ в Pascal 4.Решение задачи с использованием.
Пекарь Ольга 9 «б» Цель: формирование представления о массиве, о способах описания массива, о способах ввода/вывода элементов массива.
Массивы Заполнение и вывод на экран. ОПРЕДЕЛЕНИЕ Массив – это набор однородных данных (чисел, символов, слов), имеющий имя и последовательную нумерацию.
Массивы Структура типов данных типы простые структурированные 1.Целые (integer, longint) 2.Вещественные (real) 3.Логические (boolean) 4.Символьные (string,
© М.Е.Макарова
Комбинированный тип данных (Record) Решение задач Вербицкая Ольга Владимировна, Заозерная школа 16.
Каждый комбинированный тип - это множество записей одной и той же структуры, т.е. имеющих одно и то же число полей, названия и типы которых одинаковы.
Записи Определение и правила записи. Определение: Запись – это структурированный тип данных, состоящий из фиксированного числа компонентов одного или.
Двумерный массив. Матрица Прямоугольная таблица, состоящая из чисел А=
1 Записи 2 Запись – это тип данных, который может включать в себя несколько полей – элементов разных типов (в том числе и другие структуры). Свойства:
Двумерный массив Учитель информатики МБОУ «Марковская СОШ» Репникова С.А.
Тема урока: Одномерные массивы. - Где в жизни мы можем встретиться с таблицами?
Транксрипт:

Комбинированный тип данных

Информацию о номере дома, названии улицы и городе в единое целое и назвать адресом, а объединенную информацию о дне, месяце и годе рождения – датой рождения. Примечание: Запись и массив схожи в том, что обе эти структуры составлены из ряда отдельных компонент. В то же время, если компоненты массива должны быть одного типа, записи могут содержать компоненты разных типов.

Var Record End Var Address : Record HouseNumber : Integer; StreetName, CityName : String[20]; PeopleName : String; End; полем Примечание: Каждая компонента записи называется полем. В переменной записи Address поле с именем HouseNumber само является переменной типа Integer, поле StreetName - двадцати символьной строкой и т.д.

Для того чтобы обратиться к некоторому полю записи, следует написать имя переменной и имя поля. Эти два идентификатора должны разделяться точкой.Примеры: Address.HouseNumber := 45; Address.StreetName := 'Профсоюзная'; Address.CityName := 'Сургут'; Address.PeopleName := 'Петрова Алла Ивановна'; Каждое поле записи Address можно рассматривать как обычную переменную, которую можно напечатать или использовать в расчетах. Вместе с тем запись может использоваться как единое целое. В этом случае надо ввести тип записи.

Type Record Type Date = Record Day : 1..31; Month : (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec); Year : Integer; End; Var Var HisBirth, MyBirth : Date; HisBirth := MyBirth HisBirth=MyBirth Примечание: В этом случае возможна операция присваивания HisBirth := MyBirth и операция сравнения HisBirth=MyBirth

Procedure Begin End Procedure WriteDate(OneDate : Date); Begin Write(Ord(OneDate.Month)+1); Write('-'); Write(OneDate.Day:2); Write('-'); Write(OneDate.Year:4); End ;

Определение. Var Var Birthdays : Array [1..Persons] of Date; Обращение к элементу. Write(Birthdays[3].Year); Примечание: Поля записи в свою очередь тоже могут быть массивами, множествами, записями.

Type Type Date = Record Day : 1..31; Month :1..12; Year : End; Reminder = Record Message : Array [1..5] of String; Event : Date End; Var Var Today : Date; Memos : Array [1..100] of Reminder; Calendar : Array [1..365] of Date;

Var Record End Var Payroll : array [1..Workers] of Record FirstName, LastName : string; Residence : Record HouseNumber : real; StreetName, CityName : string; StateName : Array [1..2] char; ZipCode : integer; end; Phone : Record AreaCode, Exchenge : ; Line : ; end; PayScale : 'A'..'G'; End;

Write Write (Payroll[7].Residence.ZipCode); Payroll[23].Phone.AreaCode :=804; Ifin If Payroll[58].LastName[1] in ['T'..'Z'] Then... Соблюдение всех правил перечисления индексов и имен полей при составлении ссылок является довольно утомительным занятием, часто приводящим к ошибкам. With Чтобы облегчить выполнение многократных ссылок для описанных структур вводится оператор With (в переводе с английского - предлог "с").

Общая форма записи. With do With do With В рамках оператора, определяемого внутри оператора With, к полям определяемой переменной можно обращаться просто по имени. Например: Withdo Fortodo Withdo If then With Payroll[7].Residence do ZipCode := 2345; For i := 1 to Workers do With Payroll[i] do If PayScale < 'G' then PayScale := Succ(PayScale);

Fortodo Withdo Begin End For i := 1 to Workers do With Payroll[i].Residence do Begin Writeln(HouseNumber,' ',StreetName); Writeln(CityName,',',StateName,',',ZipCode); End; With Операторы With могут быть вложенными. Приведенные ниже три оператора эквивалентны друг другу: Payroll[i].Residence.HouseNumber := 50; Withdo With Payroll[i].Residence do HouseNumber := 50; WithdoWithdo With Payroll[i] do With Residence do HouseNumber := 50;

В массиве хранятся данные об учениках класса: школа, фамилия, класс. Вывести список учеников, которые учатся в восьмом классе.

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

Составьте список группы спортсменов, занимающихся легкой атлетикой, включающей N человек. Для каждого спортсмена укажите фамилию, имя, название общеобразовательной школы, класс, результаты по следующим дисциплинам: бег 100 м, бег 3000 м, прыжки в высоту, прыжки в длину, прыжки с шестом, метание ядра, метание копья, метание диска. Информацию о каждом спортсмене оформить в программе в виде записи. Совокупность записей объединить в массив. Составить программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатать анкетные данные спортсменов, занявших 1 место по каждой дисциплине.