Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Var ім'я_запису: RECORD

Ім'я1:тип;

Ім'я2: тип;

.

.

.

Ім'яN: тип;

End;

 

В даному випадку службове слово RECORD виконує роль відкриваючих операторних дужок, a END - закриваючих. В середині операторних дужок записуються елементи запису. Допускається замість імені запису вказувати список імен, тобто імена записів, відокремлених комами. Імена записів разом з їх описом називаються полями запису.

Для представленої відомості об'явлення записів буде виглядати наступним чином:

Var В:RECORD

N: integer;

FIO: array[1..20] of char;

OK: array[1..3] of integer;

END;

Більш універсальна форма об'явлення запису - це використання розділу типів Туре:

Туре і м 'я_типу = RECORD

Ім'я1:тип; Ім'я2:тип;

.

. .

Ім’яN: тип;

End;

Var ім'я_запису:ім'я_типу;

 

Елемент запису використовується в програмі в тому самому змісті, що й окрема змінна. Таким чином, елемент запису можна вказувати як у лівій частині оператора присвоєння, так і в виразах. Над елементами запису можна виконувати дії, допустимі для даних його типу. (Якщо тип елементу запису цілий, то виконуються всі операції, допустимі для цілих даних і т.д.).

Для відомості, що розглядається, можна виконати наступні операції:

 

1.порядковому номеру N запису В присвоїти значення 2:

B.N:=2;

2. знайти суму трьох оцінок:

s: =В.ОК[1]+В.ОК[2]+В.ОК[3];

3. ввести значення порядкового номеру:

read(B.N)

 

Звернення до запису в цілому, а не тільки до її елементів допускається тільки в операторі присвоєння. Зліва і справа від знаку присвоєння повинні використовуватися імена записів однакового типу.

 

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

Звернення до елементів запису відбувається за допомогою уточненого імені. Оператор приєднання дозволяє спростити звернення до елементу запису. Ім’я запису виноситься в заголовок оператора приєднання, а у блоці використовуються тільки імена елементів запису. Загальна форма оператора приєднання наступна:

 

With ім’я_запису do

Begin

.

.

.

End;

 

Між Begin та End знаходяться оператори, які містять імена елементів запису.

Для запису, що розглядається, операцію присвоєння, сумування та введення можна об’єднати в один оператор:

 

With B do

Begin

N:=2;

S:=OK[1]+OK[2]+OK[3];

Read(N); end;

 

Відмінність запису від масиву заключається в тому, що доступ до елементів запису здійснюється не по індексу, а по імені поля.

Приклад:Описати комбінований тип для представлення:

а) часу в годинах, хвилинах та секундах:

 

type clock=record

chas: 1..24;

min, sec: 1..60;

end;

 

б)задати анкетні дані студента. Вказати прізвище, дату народження, стать та національність.

 

Type v=record

FЮ: array[1..25] of char;

Data = record

Chislo:1..31;

Month: (янв., дек);

God:1900..2000;

End;

РоІ: (м,ж);

National: char;

End;

 

Приклад:Дано type str=array[1..10] of char;

Adr=record

Gorod,street:str;

Dom, kv:1..999;

End;

Var adrl, adr2: adr;

 

Використовуючи оператор приєднання, присвоїти змінній adrl значення,

що відповідає вашій адресі. Змінній adr2 присвоїти таке саме значення, замінивши в ньому номер будинку на 15.

 

With adrl do

Begin

Gorod: = 'Кіровоград';

Street: = 'Попова';

Dom: =13;

Kv: =156;

End;

Adr2: =adrl;

Adr2.kv: =15;

Приклад:є многочлен 4a+ 7b+8a-3a-2k+p-5r+ 7b-4k. Знайти подібні члени для змінної а та обчислити сумарний коефіцієнт. Кожний елемент многочлена можна вважати записом.

 

program zap 1;

type p=record

buk: char;

koef: integer;

end;

var ml,m2:p;

sum, i: integer;

begin

sum:=0;

writeln('введіть многочлен');

while not eoln do

begin

readln(m1.koef);

readln(m1.buk);

if m1.buk= 'a' then

sum:=sum+m1.koef;

end;

m2.koef:=sum;

m2.buk:=’a’;

writeln(‘сумарний коефіцієнт=',т2.koef,m2.buk);

end.

m1 - вхідний елемент многочлена;

m2 - вихідний елемент многочлена;

Buk - буква (елем. зап.);

Sum - сума;

Koef - коеф. (елем. зап.)

 

В даній програмі використовується два записи: ml та m2 з однаковою структурою, тобто з однаковими типами даних.

Задача: Група складається з п студентів. Ввести їх дані в комп’ютер та відсортувати за алфавітом (прізвища).

 

Program ZAP5;

Const n=15;

 

Type stud=record

FIO: string [20];

OK: array [1..5] of integer;

end;

Var Grupa: array [1..n] of stud;

st: stud;

i, k, j: integer;

Begin

Writeln(‘Введ. записи’);

For i:=1 to N do

begin

with Grupa [i] do begin

Readln (FIO);

For k:=1 to 5 do read (OK [k]);

readln; end; end;

{сортування за алфавітом};

For i:=1 to N do

For j:=1 to N-i do

If Grupa [j].FIO>Grupa[j+1].FIO then

begin

St:=Grupa[j];

Grupa[j]:=Grupa[j]+1;

Grupa[j+1]:=St;

end;

{Список після сортування}

For i:=1 to N do begin

With Grupa[i] do begin

Write(FIO);

For k:=1 to 5 do write (OK [k]:5);

Writeln; end; end; end.

 

Дана програма забезпечує формування масиву записів в пам’ять, сортування всіх записів за алфавітом і виведення відсортованого масиву.

 




Переглядів: 276

<== попередня сторінка | наступна сторінка ==>
Записи. | Записи з варіантами.

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.007 сек.