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

Наприклад

ord(avto)= 0, ord(day)= 4

pred(day)=, succ(day)= sat.

Дані цього типу не можна вводити з клавіатури або виводити на екран.

Завдання 1:

  1. Нехай задані описи :

var x,y : (winter, spring, summer, autumn);

t : (cold, warm);

а) Чи допустимі присвоєння:x:=spring; t:=warm: t:=hot; y:=x; y:=t;

б) Обчислити значення виразів Чи допустимі присвоєння:

spring<summer;

autumn<winter;

Succ(spring);

Pred(autumn);

Ord(spring);

winter<=summer;

spring<>warm;

Pred(spring);

Pred(cold);

Pred(autumn) + Ord(cold);

в) Чи допустим оператор циклу з заголовком : For x:=spring To autumn Do

  1. Задані описи наступних змінних :

VAR m, m1: (january, february, march, april, may, june, july, august, september, october, november, december);

k: 1..maxint; n: 1..12;

Присвоїти змінной m1:

а) назву місяця, наступного за місяцем m;

б) назва k-го місяця після місяця n.

  1. Діапазонний тип - це звуження деякого базового впорядкованого типу. Його описують так:

type <ім’я типу> = <значення 1> .. <значення 2>;

Приклад. Створимо три типи (weekdays, workdays, months), які описують всі дні і робочі дні тижня, а також номери місяців року. Оголосимо змінні dayl, day2, day3 і month цих типів:

Type weekdays = (mon, tue, wed, fri, sat, sun);

workdays = mon..fri;

months=1..12;

var dayl, day2 : weekdays;

day3 : workdays;

month1 : months;

  1. Рядковий тип даних (string). Значеннями змінної рядкового типу може бути будь-яка послідовність, що складається не більше ніж з 255 символів. Дані рядкового типу можна описати в розділі типів, задати в розділі констант або оголосити в розділі змінних. Наприклад:

type t = string[10];

const s = 'Bye!';

var top : t; w : string;

Типізовані константи.

Окрім звичайних існують типізовані константи. Вони дають можливість оголошувати змінні і відразу привласнювати їм значення:

const <ім’я константи 1> : <тип 1> = <змінна 1>; . . .

< ім’я константи n> : <тип n> = <змінна n>;

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

const s : char = 'a'; n : integer = 5; р : real = 1.73;

b : boolean = true;

Структура програми.

Програма складається з наступних розділів:

заголовка

program < ім'я програми >;

описової частини

uses — приєднання бібліотек і модулів;

label — оголошення міток;

const — оголошення констант;

type — опис типів;

var — оголошення змінних;

procedure — оголошення процедур користувача;

function - оголошення функцій користувача

виконуючої частини

begin

< розділ команд >

end.

  • Заголовок і всі розділи, окрім останнього, необов'язкові.

  • Роздільником між командами програми служить символ ;

  • В кінці програми завжди повинна стояти крапка .

  • Заголовок програмі привсвоює програміст. В службових словах і іменах, якими користувач називає свої програми і змінні, прописні і рядкові букви рівноправні: імена А і а (або MyName і myname) позначають один і той же об'єкт.

  • В програму можуть входити коментарі. Коментар -фрагмент тексту програми, взятий у фігурні дужки {це коментар} або записаний так: (* коментар *). Коментар служить для пояснення роботи програми і не впливає на виконання команд. Він може бути розміщений в будь-якому місці програми.

Зауваження. Особливим видом коментарю є директива. В директиві після відкриваючої дужки знаходиться символ $. Директиви служать для підтримки необхідної моделі пам'яті або режимів функціонування середовища програмування. Описи деяких директив приведені в кінці розділу.

  • Всі величини, які входять в програму, повинні бути описаними.

  1. Всі величини повинні бути описані в розділі констант, якщо їх значення не змінюються під час виконання програми:

const <константа 1> = <значение 1>;

...

<константа n> = <значение n>;

  1. Всі величини повинні бути описаний в розділі змінних, якщо їх значення обчислюються:

var <список змінних 1> : <тип змінних 1>;

... {Елементи списків записують через кому}

<список змінних n> : <тип змінних n>;

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