Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы_Информатика.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.79 Mб
Скачать

2. Оператор присоединения.

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

Формат оператора:

WITH <префикс> DO <оператор>

Здесь префикс - это имя одного или нескольких уровней записи. Префикс присоединяется ко всем именам соответствующей записи, которые встречаются в операторе, следующим за служебным словом DO. Если один и тот же префикс необходимо присоединить к именам в нескольких операторах, то они объединяются в составной оператор с помощью операторных скобок BEGIN и END. В префиксе может присутствовать имя переменной, например индекс массива. Причем внутри оператора WITH ее значение изменяться не может, оно должно быть фиксированно.

Например, в программе MAN вывод на экран имен и фамилий людей родившихся в определенном году G осуществлялся следующим образом:

FOR I:=1 TO N DO

IF A[I].DATE.YEAR=G THEN OUTP_NAME(A[I].NAME);

С помощью оператора присоединения эта конструкция запишется так:

FOR I:=1 TO N DO

WITH A[I] DO

IF DATE.YEAR=G THEN OUTP_NAME(NAME);

После служебного слова WITH может следовать не один префикс, а несколько, разделенных запятыми. Так оператор

WITH R1,R2,...,RN DO S;

эквивалентен последовательности операторов

WITH R1 DO

WITH R2 DO

...

WITH RN DO S;

здесь R1,R2,...,RN - префиксы, а S - оператор.

Задание

1. Сформировать массив, элементами которого являются записи типа Person (см. пример 2). Заполнить его информацией о студентах Вашей группы. Вывести информацию на экран в виде:

------------Студенты группы 711----------

Фамилия Имя Отчество

дд.мм.гг

рост (в см)

оценка

и т.д.

Подсчитать количество студентов (в процентном отношении), получивших оценку 2,3, 4 п 5.

2. Продолжить задачу и посчитать количество студентов, рожденных ле­том, зимой, весной и осенью.

3. Продолжить задачу и посчитать количество студентов-юношей, имею­щих рост выше 170 см.

4. Вычислить сумму трех комплексных чисел и результат вывести на экран. Определить запись, состоящую из полей: действительная часть числа (целый тип) и мнимая часть числа (целый тип).

5. Подсчитать средний бал из оценок, полученных на трех экзаменах. Оп­ределить запись, состоящую из полей: имя студента (строковый тип) и оценки (одномерный массив). Вывести информацию на экран в виде: Студент-----Ср. бал.

6. Подсчитать количество домов, расположенных на четной (нечетной) стороне улиц и вывести их адреса (улица, дом) на экран. Определить адрес в ви­де записи, состоящей из полей: улица (строковый тип) и номер дома (целый тип).

Порядок выполнения работы.

Для выполнения первого задания необходимо войти в среду программирования ABC Pascal и в окне редактирования ввести текст программы, произвести ее отладку и выполнение.

Содержание отчета

Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:

  1. Название работы.

  2. Постановку задачи.

  3. Описание алгоритма (метода) решения.

  4. Текст программы.

  5. Результаты работы программы на 2–3 контрольных примерах.

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

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Тульский государственный университет»

Институт высокоточных систем им. В.П. Грязева

Кафедра Системы автоматического управления

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]