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

Теоретические положения. Запись – это структура данных, состоящая из фиксированного числа компонент

Решение типовых задач | Приложение А | Сформировать запись, имеющую следующую структуру |


Читайте также:
  1. I. ОБЩИЕ ПОЛОЖЕНИЯ
  2. I. ОБЩИЕ ПОЛОЖЕНИЯ
  3. I. ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
  4. II. ОБЩИЕ ПОЛОЖЕНИЯ
  5. II. Теоретические основы маркетинга медицинских услуг
  6. IV. Заключительные положения
  7. V. Все теоретические науки, основанные на разуме, содержат априорные синтетические суждения как принципы

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

В общем виде описание типа для записи можно представить:

TYPE < идентификатор типа >= RECORD

< идентификатор 11 >[,< идентификатор 12 >,…]: < тип 1 >;

< идентификатор 21 >[,< идентификатор 22 >,…]: < тип 2 >;
...
END;

Например,

TYPE TA= RECORD
P1: REAL;
P2: CHAR;
P3: BYTE
END;

VAR A: ARRAY[1..10] OF TA;

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

Запись может объявляться и непосредственно в разделе описания переменных.

VAR C: RECORD
P1: REAL;
P2: CHAR;
P3: BYTE
END;

Рассмотрим пример. Дан массив записей со следующей структурой:
- шифр группы;
- номер зачетной книжки;
- код дисциплины;
- оценка.

Требуется определить средний балл студентов группы AI007. При вводе массива последняя запись имеет шифр группы «99999».

Program srball;

type zap=record
shg:string[5];
nzk:integer;
kd:1..100;
oc:2..5
end;

var mas:array[1..100] of zap;
k,n,i:byte;
sum:real;

begin
i:=0;
repeat
inc(i);
readln (mas[i].shg, mas[i].nzk, mas[i].kd, mas[i].oc)
until mas[i].shg='99999';
n:=i; sum:=0; k:=0;
for i:=1 to n do
if mas[i].shg='AI007' then
begin
sum:=sum+mas[i].oc;
inc(k)
end;
if k<>0 then sum:=sum/k;
writeln ('Средний балл в группе AI007=',sum)
End.


Дата добавления: 2015-07-19; просмотров: 54 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Требования к отчету| Оператор присоединения (WITH)

mybiblioteka.su - 2015-2024 год. (0.011 сек.)