
- •Сборник методических указаний к лабораторным работам
- •Методические указания к лабораторной работе № 1
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 2
- •Теоретические сведения
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 3
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 4
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 5
- •Теоретические сведения
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 6
- •Задание
- •Содержание отчета Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Контрольные вопросы
- •Методические указания к лабораторной работе № 7
- •Теоретические сведения
- •Задание.
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 8
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 9
- •Задание
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 10
- •Теоретические сведения
- •Задание.
- •Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Методические указания к лабораторной работе № 11
- •Задание
- •Порядок выполнения работы.
- •Содержание отчета Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:
- •Контрольные вопросы
- •Основная литература
- •Дополнительная литература
Методические указания к лабораторной работе № 11
СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ. ЗАПИСИ.
по дисциплине
ИНФОРМАТИКА
Направление подготовки: 221000 Мехатроника и робототехника
Профиль подготовки: Мехатроника
Квалификация (степень) выпускника: бакалавр
Форма обучения: очная
Тула 2011 г.
ЛАБОРАТОРНАЯ РАБОТА N 11
Цель и задачи работы: Познакомиться с организацией структурированных типов данных и в языке программирования Паскаль.
Теоретические сведения
Объединение компонент, принадлежащих к различным типам, в один составной тип, называется комбинированным типом или записью. Существует две разновидности записей — фиксированные записи и записи с вариантной частью.
Фиксированные записи
Фиксированная запись - это структура данных, состоящая из постоянного числа компонент, называемых полями, которые могут иметь различный тип данных. В определении записи для каждой из ее компонент указывается тип данных и имя (имя поля), обозначающее эту компоненту. Ее формат: type
имя_записи = record
имя_поля_1: тип_данных_1; имя_поля_2: тип_данных_2;
UMH_nojiH_N: mun_daHHbix_N; end;
где record и end - служебные слова, имя_записи - имя комбинированного типа (записи), имя_поля_1, имя_поля_2, ..., имя_поля_М - имена полей (компонент) записи, тип_ данных_1, тип_ данных_2, ..., тип_ данных_М, - типы данных для соответствующих полей записи. Для обращения к компоненте (полю) записи используют следующее обозначение:
имя_переменной_типа_записъ.имя_поля_записи
Пример 1. Тип Date соответствует понятию "дата", каждое значение этого типа объединяет в себе три значения, а именно: число, месяц, год. type Date = record
day: 1.. 31; {день}
month :(jan,feb, mar, apr, mayjunjul, aug, sep, oct, nov, dec); {месяц} year: 1900.. 2000 {год} end; var
D: Date; {переменная типа "дата"}
Запись состоит из трех компонент (три поля: day, month, year): первая — day и третья — year принадлежат к ограниченному типу данных, а вторая — month принадлежит к перечислимому типу данных.
Пример 2. Тип Person предназначен для создания "банка данных", содержащих информацию о какой-либо группе людей (например, студентах). Компоненты FullName и Birthday сами являются записями (т.е. имеют место вложенные записи). type
Name = record
first, second, last: string[15] {фамилия, имя, отчество] end; Person = record
FullName: Name;
Birthday: Date; {см. выше определение типа Date} Sex: (male, female); {пол: мужской, женский} Height: 150.. 200; {рост} Ball: 2 .. 5 {оценка}
end; var
Student: Person; {переменная типа Person}
Для переменной Student, имеющей тип Person, могут иметь место следующие присваивания:
Student. FullName.first: = 'Петров '; Student.FullName.second := 'Петр'; Student. FullName. last: = 'Петрович '; Student. Birthday, day := 1; Student. Birthday, month :=jan;
Student.Birthday.уear := 1978; Student. Sex := male; Student.Height := 170; Student. Ball := 5;
Используя оператор with-do (который позволяет определить область действия, где имена полей могут использоваться как обычные, не составные, имена), эту группу операторов можно записать более компактно. with Student, FullName, Birthday do begin
First := 'Петров'; Second := 'Петр'; Last := 'Петрович'; day := 1; month :=jan; year := 1978; Sex := male; Height := 170; Ball := 5; end;
Задача. Посчитать общую стоимость покупки: книга, ручка и тетрадь. Цена (cost) задается общим количеством рублей (rouble) и копеек (copeck). При расчете суммарной стоимости необходимо осуществить перевод количества копеек в рубли. Определить запись, состоящую из полей: предмет (строковый тип) и цена (запись, состоящая из полей — рубль и копейка). program bank; type
Cost = record {цена} rouble, [рубль} copeck: integer; {копейка} end; Thing = record {товар}
name: string[15]; {наименование товара} cena : cost {цена товара} end; var
t: array [1.3] of Thing; {массив, состоящий из записей типа Thing] i, sum_r, sum_c : byte;
begin
sum_r:=0; sum_c:=0; for i:=l to 3 do with t[i], cena do begin write(' наименование товара'); readln(name);
writelnC цена товара');
write(' руб= '); readln(rouble);
write(' коп= '); readln(copeck);
sum_r:= sum_r + rouble; sum_c:=sum_c+copeck;
end;
writeln('**** общая стоимость покупки ****'); wriyeln(sum_r+sum_c div 100, 'руб. ',sum_c mod 100,' коп.') end.