Студопедия — Лабораторная работа №8
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторная работа №8






 

Тема: Разработка программ с использованием множеств и записей.

Цель работы: познакомиться с понятием «запись», научиться применять записи в составлении программ.

 

Теоретические сведения

В настоящее время вычислительная техника находит широкое применение в различного рода информационных системах. Они имеются в больших библиотеках, торговле, производстве, адресных бюро и т.д. В информационных системах довольно часто приходится иметь дело с комбинациями разнотипных объектов. В Паскале комбинациями разного типа являются записи. Составляющие запись объекты называются полями. В записи каждое поле имеет своё собственное имя. Упрощённая форма определения записи включает указание имени записи, имён отдельных компонентов (полей) и соответствующих им типов данных.

TYPE

< имя записи >=

RECORD

< имя поля 1 >: < тип >

< имя поля 2 >: < тип >

…………………………

< имя поля N >: < тип >

END;

Например, для решения задачи определения среднего балла, имея данные по пяти дисциплинам для конкретного студента, запись может иметь вид:

TYPE

STR =

RECORD

FAM: STRING[20];

B1, B2, B3, B4, B5:1..5;

SB: REAL;

END;

Здесь FAM обозначает строку символов для хранения фамилии студента, В1, B2, B3, B4, B5 – баллы по соответствующим дисциплинам, SB – средний балл. Переменная типа STR имеет смысл записи, содержащей информацию об одном студенте.

Если требуется хранить информацию не по одному студенту, а по 25, то можно ввести массив записей TBL:

VAR

TBL: ARRAY [1..25] OF STR;

Обращение к полям записи осуществляется посредством составного имени:

<имя переменной-записи>.<имя поля>

Возможны, например, такие операторы присваивания:

TBL[ 3 ].FAM:= “Иванов”;

TBL[ 20 ].B2:=5;

TBL[ K+1 ].SB:=4.666;

Имена компонент внутри записи не должны повторяться. Значения записи можно пересылать в другие переменные – записи с помощью операторов присваивания. Возвращаясь к рассмотренному примеру, можно записать:

TYPE

STR=

RECORD

FAM: STRING[20];

B1, B2, B3, B4, B5:2..5;

SB: REAL

END;

VAR Z1, Z2: STR;

BEGIN

- - - - - - - -

Z1:=Z2;

Указанный в программе оператор присваивания эквивалентен следующим операторам:

Z1.FAM:= Z2.FAM;

Z1.B1:= Z2.B2;

Z1.B2:= Z2.B2;

Z1.B3:= Z2.B3;

Z1.B4:= Z2.B4;

Z1.B5:= Z2.B5;

Z1.SB:= Z2.SB;

При обращении к компонентам записи мы сталкиваемся с необходимостью указать в отдельных операторах составных имён, что приводит к удлинению программы и излишней громоздкости. Для устранения этого неудобства в языке Паскаль используется оператор WITH, который позволяет осуществлять доступ к компонентам записи таким образом, как если бы они были простыми переменными.

Общий вид оператора:

With < имя записи > do

< оператор >;

Внутри оператора к компонентам записи можно обращаться только с помощью имени компоненты.

 

Задание

Взять задание из таблицы 1 согласно варианту и составить программу.

 

Контрольные вопросы.

1. Что такое запись?

2. Из чего состоит запись?

3. Как находятся компоненты массива записей?

4. Общий вид и принцип работы оператора WITH?

5. Каким образом работает алгоритм упорядочивания списка?

 

Литература.

1.Новичков В.С. Паскаль - В.С. Новичков, Н.И. Парфилова, А.Н. Пилькик. - М.: Высш. школа, 1990-223с.

2.Боон К. Паскаль для всех.

 

Таблица 1

Вариант Задание
1. Спишите запись АНКЕТА и поместите в неё следующую информацию: Ф.И.О. (фамилия, имя, отчество), адрес (улица, номер дома, номер квартиры), пол, возраст. Определите, сколько лиц женского и сколько лиц мужского пола проживают по одной улице.
2. Воспользовавшись записью из варианта номер 1, определить сколько лиц женского и сколько мужского пола проживает в одном доме.
3. Воспользовавшись записью АНКЕТА из варианта номер 1, определить сколько лиц мужского пола в возрасте сташе 18 лет и младше 60 проживают по одной улице.
4. Воспользовавшись записью АНКЕТА из варианта номер 1, определить сколько детей до 17 лет включительно проживает в одном доме.
5. Воспользовавшись записью АНКЕТА из варианта номер 1, определить сколько детей до7 лет проживает по одной улице.
6. Воспользовавшись записью АНКЕТА из варианта номер 1, определить сколько лиц женского пола старше 55 лет проживает в одном доме.
7. Опишите запись СТУДЕНТ и поместите в неё следующую информацию: Ф.И.О., оценки (математика, физика, черчение, химия, сопромат). Определите, сколько студентов имеют неудовлетворительную оценку хотя бы по одному предмету.
8. Воспользовавшись записью СТУДЕНТ из варианта 7, определить сколько студентов имеет неудовлетворительную оценку по математике.
9. Воспользовавшись записью СТУДЕНТ из варианта 7, определить сколько студентов сдали все экзамены на 5.
10.   Воспользовавшись записью СТУДЕНТ из варианта 7, определить средний бал группы по физике.
11. Воспользовавшись записью из варианта 7, определить количество отличных оценок, полученных группой по всем предметам.
12. Воспользовавшись записью из варианта 7, определить какое количество студентов имеет средний бал от 4 до 5.
13. Воспользовавшись записью из варианта 7, определить какое количество неудовлетворительных оценок получено по всем предметам.
14. Воспользовавшись записью из варианта 7, определить какой из предметов был сдан группой лучше всего.
15. Воспользовавшись записью из варианта 7, определить какой процент студентов не имеет задолженностей.
16. Опишите запись ТРАНСПОРТ и поместите в неё следующую информацию: рейс(номер рейса). Ф.И.О.(Фамилия, имя, отчество пассажира), багаж (количество вещей), вес (в кг.). Определить число пассажиров, вес вещей которых превышают 20 кг.
17. Воспользовавшись записью ТРАНСПОРТ, из варианта 16 определить, имеется ли пассажир, багаж которого состоит из одной вещи весом меньше 20 кг.
18. Воспользовавшись записью ТРАНСПОРТ, из варианта 16 определить, средний вес багажа.
19. Воспользовавшись записью ТРАНСПОРТ, из варианта 16 определить, количество пассажиров, вес багажа которых превосходит средний.
20. Воспользовавшись записью ТРАНСПОРТ, из варианта 16 определить, количество пассажиров, имеющих более двух вещей.

 

 







Дата добавления: 2015-09-15; просмотров: 1730. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

Словарная работа в детском саду Словарная работа в детском саду — это планомерное расширение активного словаря детей за счет незнакомых или трудных слов, которое идет одновременно с ознакомлением с окружающей действительностью, воспитанием правильного отношения к окружающему...

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия