Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Множини у Pascal АВС




Основні стандартні процедури

Нагадаємо, що загальні стандартні процедури введення та виведення даних Read(a,b,...), Write(a,b,...), Readln(a,b,...), Writeln(a,b,...) можуть використовувати параметри a,b типу string.

Крім того, у Pascal ABC є набір процедур, призначених спеціально для оброблення рядкових даних. Деякі приклади подані таблицею.

 

Ім’я та параметри Типи параметрів Дія
Delete(s,index,count) s - string, index та count - integer Видаляє у рядку s count символів, починаючи з позиції index.
Insert(subs,s,index) s, subs - string, index - integer Вставляє підрядок subs у рядок s з позиції index.
SetLength(s,n) s - string, n - integer Встановлює довжину рядка s рівною n

 

Література:

1. Попов В.Б. Паскаль и Дельфи. Самоучитель – СПб.: Питер, 2004. – 544 с.

2. Глушаков С.В., Зорянский В.Н., Хоменко С.Н. Программирование на Turbo Pascal 7.0 (TP 7) – Харьков: Фолио, 2005. – 501 с.

3. Справочная система Pascal ABC.


Додаток: таблиця ASCII (American Standard Code for Information Interchange)

 

Dec Hex Char   Dec Hex Char   Dec Hex Char   Dec Hex Char
    NUL       (sp)       @       `
    SOH       !       A       a
    STX       "       B       b
    ETX       #       C       c
    EOT       $       D       d
    ENQ       %       E       e
    ACK       &       F       f
    BEL       '       G       g
    BS       (       H       h
    TAB       )       I       i
  A LF     2A *     4A J     6A j
  B VT     2B +     4B K     6B k
  C FF     2C ,     4C L     6C l
  D CR     2D -     4D M     6D m
  E SO     2E .     4E N     6E n
  F SI     2F /     4F O     6F o
    DLE               P       p
    DC1               Q       q
    DC2               R       r
    DC3               S       s
    DC4               T       t
    NAK               U       u
    SYN               V       v
    ETB               W       w
    CAN               X       x
    EM               Y       y
  1A SUB     3A :     5A Z     7A z
  1B ESC     3B ;     5B [     7B {
  1C FS     3C <     5C \     7C |
  1D GS     3D =     5D ]     7D }
  1E RS     3E >     5E ^     7E ~
  1F US     3F ?     5F _     7F DEL

 

Множина – структурований тип даних – набір об’єктів, взаємозв’язаних за деякою ознакою або групі ознак, які можна розглядати як єдине ціле. Елементи множини повинні належати одному з простих типів, крім real. Цій тип називають базовим типом множини. Базовий тип визначається діапазоном або переліченням. Область значень типу «множина» -- набір різноманітних підмножин, складених з елементів базового типу. У виразах значення елементів множини записують у квадратних дужках. Якщо множина не має елементів, його називають пустим (позначення – []). Кількість елементів множини називають його потужністю.

Для опису множинного типу використовують словосполучення set off (множина із…).

 

type

<ім’я типа> = set of <елемент1…. елемент n>;

var

<ідентифікатор…>: <ім’я типа>;

 

Можна визначити множинний тип без попереднього опису

 

> =

var

<ідентифікатор…>: set of <елемент1…. елемент n>;

 

Приклад:

 

type

Simply = set of ‘a’..’h’;

Number = set of 1..31;

var

Pr: Simply;

N: number;

Letter: set of char; {Визначення множини без попереднього опису}

 

Кількість елементів множини не повинна перевищувати 255, відповідно, номери значень базового типу повинні знаходитися у діапазоні 0…255.

Для оброблення множин використовують операції відношення (=, <>, >=, <=), об’єднання, перетинання, різниці множин та операція in для перевірки належності конкретного значення множині.

 

Операція Примітка
  Операції відношення A=B Множини вважаються рівними, якщо вони складаються із однакових елементів. Порядок слідування елементів у множинах на має значення. Якщо множини відрізняються потужністю, або значенням хоча б одного елемента, вони вважаються нерівними. Результат – булевий.
  If A in [1,2,3] then… Для перевірки належності конкретного значення множині. Звичайно застосовується у умовних операторах. Результат – булевий.
  A+B Об’єднання множин. Результат – нова множина.
  A*B Перетинання множин. Результат – нова множина.
  A-B- Різниця множин. Результат – нова множина.

 

Особливість використання множин полягає у тому, що у мові Pascal відсутні засоби введення-виведення елементів множин, тому для цього програміст повинен самостійно створювати відповідні процедури. Наприклад:

 

for i:=0 to 255 do
if i in st then write(i,' ');

 

Література

1. Попов В.Б. Паскаль и Дельфи. Самоучитель – СПб.: Питер, 2004. – 544 с.

2. Глушаков С.В., Зорянский В.Н., Хоменко С.Н. Программирование на Turbo Pascal 7.0 (TP 7) – Харьков: Фолио, 2005. – 501 с.

3. Справочная система Pascal ABC.

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 791; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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