русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Шановні українці! Матеріал був перекладений з російської мови. Тому можуть бути незначні помикли...

Урок 8 — Запису в Паскале. Приклади вирішення завдань в Turbo Pascal

Запису в Паскале - фіксоване число елементів одного або декількох типів, тобто на відміну від масивів, в яких містяться елементи одного типу, в записах можуть міститися елементи як одного, так і різних типів. Тема, наприклад, відомості про книгах має структуру: автор, назва книги, видавництво, рік видання, її ціна. Перші три елементи відноситься до строковому типу даних, четвертий до цілого, а ціна - до речовому типу. Елементами записів можуть бути базові типи, змінні, масиви, покажчики, запису і т.д. Елементи запису разом з їх описом називаються полями запису. Над елементами запису можна виконувати дії, допустимі для даних цього типу.

Всі записи повинні бути описані в розділі TYPE . Опис запису починається зі службового слова RECORD закінчується END, між якими вказується список імен та типів полів, обраних користувачем. Всі ідентифікатори полів у записи повинні бути різними. пНапример, запис Book можна описати таким типом card:

card TYPE = record
Author : string [15];
Title: string [20];
Firm: string[10];
year : integer ;
cena : real
End;
VAR Book : card;

Тип запису (наприклад, card) вводить тільки шаблон запису і з його ім'ям не пов'язаний ніякої конкретний об'єкт. Звернення до поля виконується з допомогою складеного імені селектора (запису), яке складається з :
пИмя_записи . имя_элемента

Наприклад, привласнити значення елементів запису Author і Title можна так: Book.author:=’Довгаль С.І.’; Book.title:=’Турбо Паскаль V 7.0’;

Введення ціни книги з клавіатури : readln (Book.cena);

Для спрощення і скорочення запису складових доменів використовується оператор приєднання WITH. Ім'я запису виноситься в заголовок оператора приєднання, а в блоці використовуються тільки імена полів запису. Загальний вигляд оператора приєднання:
WITH ім'я запису DO оператор;

Попередні оператори можна записати простіше:

With Book do begin
author:=’Довгаль С.І.’; title:=’Турбо Паскаль V 7.0’; readln (cena);
end;

Приклад: З відомості 3-х студентів з їх оцінками ( порядковий номер, П.І.Б. і три оцінки) визначити кількість відмінників і середній бал кожного студента.

Program Спік;
Type wed = record {Тип wed включає 3 поля: n, fio, bal}
n : integer ;
fio : string[40] ;
bal : array [1..3] of integer {Поле bal - масив з 3 оцінок }
end;
Var spisok : wed ; {Запис spicok типу wed}
i, j, kol, s : integer; sr : real;
Begin
kol:=0; {kol - кількість відмінників}
With spisok do {with приєднує ім'я запису spisok до всіх }
For i:=1 to 3 do { полях всередині циклу For за i }
begin
n:=i;
Write (" Vvedite FIO # ", i ," ");
Readln (fio);
s:=0;
For j:= 1 to 3 do
begin
write ( "Vvedite ocenky: " );
readln ( bal [j] );
s := s+ bal [j];
end;
if s=15 then kol:=kol+1; {підрахунок кількості відмінників}
sr := s/3; writeln ( fio, ", Sredniy bal = ", sr:4:1); end;
writeln ( " Kolichestvo otlichnikov = ", kol );
readln;
end.

Результат роботи програми:

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

Повернутися взміст


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн