КАТЕГОРИИ: Архитектура-(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) |
Функції
Concat(s1,s2) – конкатенація рядків s1 s2 у вказаному порядку. Вираз Результат Concat(‘Tur’,’bo’); Turbo Copy(s,n,m) – результатом є m символів з рядка s, починаючи з символу з номером n. Вираз Результат Copy(‘Turbo Pascal’,7,6); Pascal Length(s) – результатом є поточна довжина рядка s, тобто кількість символів в ньому. Pos(s,t) – результатом є номер символу, починаючи з якого рядок s входить в рядок t.
29. Підпрограми. (Turbo Pascal) Підпрограми призначені для реалізації алгоритмів опрацювання окремих частин деякої складної задачі. Вони дають змогу реалізовувати концепцію структурного програмування, суть якого полягає в розкладанні складної задачі на послідовність простих підзадач і в складанні для алгоритмів розв’язування кожної підзадачі відповідних підпрограм. Розрізняють два види підпрограм — підпрограми-процедури та підпрограми-функції. Підпрограми поділяються на стандартні та підпрограми користувача. Стандартні підпрограми створювати не потрібно — вони містяться у стандартних модулях System, Crt, Dos, Graph тощо. Підпрограма користувача — це пойменована група команд, яку створюють і описують в основній програмі в розділах procedure або function і до якої звертаються з будь-якого місця програми потрібну кількість разів. Процедури (procedure). Загальний опис процедури: procedure <назва> (<список формальних параметрів>); У списку формальних параметрів перераховують змінні разом із зазначенням їхніх типів. Розрізняють параметри-аргументи (інший термін: параметри-значення) — вхідні дані для процедури, і параметри-результати (інший термін: параметри-змінні), через які можна повертати результати роботи процедури в основну програму. Перед списками параметрів-результатів кожного типу записують слово var.
Розділи описів і оголошень у підпрограмах мають таку саму структуру як і в основній програмі. До процедури звертаються з розділу команд основної програми або іншої підпрограми. Процедуру викликають за допомогою команди виклику <назва процедури> (<список фактичних параметрів>); Параметри, які записують у команді виклику процедури, називаються фактичними. Фактичними параметрами-аргументами можуть бути сталі, змінні, вирази, а параметрами-результатами — лише змінні. Типи даних тут не зазначають. Між фактичними і формальними параметрами має бути відповідність за кількістю й типами. Зверніть увагу, відповідні фактичні та формальні параметри можуть мати різні імена. Змінні, описані в розділі описів основної програми, називаються глобальними. Вони діють у всіх підпрограмах, з яких складається програма. Змінні, описані в розділі описів конкретної процедури, називаються локальними. Вони діють тільки в межах даної процедури. Процедури можуть отримувати і повертати значення не тільки через параметри-результати, але й через глобальні змінні. Тому списків параметрів у процедурі може і не бути. Функції (function). Функція, на відміну від процедури, може повертати в місце виклику лише один результат простого стандартного типу. Загальний опис функції: function <назва>(<список формальних параметрів>): <тип функції>;
У розділі команд функції має бути команда присвоєння значення деякого виразу назві функції. Результат функції повертається в основну програму через її назву (як і випадку використання стандартних функцій, таких як sin, cos). Виклик функції здійснюється лише з виразів <назва> (<список фактичних параметрів>). Рекурсивні функції. Рекурсією називається алгоритмічна конструкція, де підпрограма викликає сама себе. Рекурсія дає змогу записувати циклічний алгоритм, не використовуючи команду циклу.
30. Структуровані типи даних (записи, множини). (Turbo Pascal) Запис - це складений або структурний тип даних, що містить фіксовану кількість компонент, кожна з яких може мати свій тип. Тип компонент запису може бути довільним: простим, складеним або вказівним. Опис записного типу складається з ключового слова RECORD, за яким іде список компонент із зазначенням їхніх типів. Завершує опис ключове слово END. Компонента запису називається полем. Загальний вигляд опису записного типу: TYPE <Ім'я типу>= RECORD <1м'я поля>: <тип поля>; <1м'я поля>: <тип поля> END; Поле може бути й записного типу, тобто допускається вкладеність записів. У межах одного запису імена полів повинні бути різними, у вкладених записах вони можуть повторюватися. Над даними записного типу, як над одним цілим, визначені дві операції: виділення компоненти та оператор присвоєння. Для виділення компоненти деякого запису після імені змінної записного типу ставиться знак '.' (крапка ), за яким вказується ім’яполя. В операторі присвоєння можна вживати лише записи, ідентичні за структурою. Доступ до конкретного поля запису дає складене ім'я вигляду <назва запису>.<назва поля> Оператор приєднання WITH. Використання полів є громіздким через те, що постійно зазначається ім'я змінної-запису. Для скорочення подібних записів використовують оператор приєднання WITH. Цей оператор задає область дії, в якій для запису, вказаному після WITH, ідентифікація поля відбувається за допомогою простого імені поля. Загальний вигляд оператора приєднання: WITH <ім'я змінної-запису> DO <оператор>; Множина - складений або структурний тип даних, який є невпорядкованим набором об'єктів спільної природи. Цей набір розглядається як одне ціле. Кожний об'єкт називається елементом множиниа тип елементів називається базовим. Усі елементи повинні мати один і той самий тип. Кількість елементів множини не повинна перевищувати 256, причому номер кожного елемента повинен бути меншим 256. Величина множинного типу може бути набором усіх можливих підмножин, що складаються з елементів базового типу.
Опис множинного типу складається з ключового слова SET, за яким йдуть ключове слово OF та опис базового типу. <ім’я типу> = SET OF <базовий тип> Тут <ім’я типу> - правильний ідентифікатор; SET, OF - зарезервовані слова (множина, з); <базовий тип> - базовий тип елементів множини. Наприклад, VAR m: SET OF 1..12; Порядок розташування елементів у множині значення не має: [1, 2, 3, 4] і [2, 4, 1, 3] – це одна й та ж множина. Множина без елементів називається порожньою: [ ]. Операції над множинами. Над даними множинного типу визначені операції відношень (=,<>, <=, >=), перевірки входження IN, об'єднання (+), перерізу (*), різниці (-) множин. Результат операцій відношення має логічний тип і визначається таким чином. а=b - результатом буде True (істина), якщо множини а і b складаються з одних і тих самих елементів. При цьому порядок елементів ролі не відіграє. a<>b - результатом буде True, якщо множини а і b відрізняються хоча б одним елементом або мають різну кількість елементів. a<=b - результатом буде True, якщо кожен елемент множини a міститься у множині b або якщо множина а - порожня. Операція >= визначається аналогічно. Операція перевірки входження IN має вигляд: e IN а, де e - величина базового типу для множини а. Результатом операції IN є Тrue якщо елемент e міститься у множині а і False у противному разі. Використання операції IN дає змогу ефективно записувати складні умови. Об'єднанням двох множин а i b є множина с, яка містить елементи множин а і b. Перерізом двох множин а i b є множина с, яка містить лише ті елементи, що входять і в а, і в b. Різницею двох множин а i b є множина с, яка містить ті елементи множини а, що не входять у множину b.
Оператор присвоєння множин вимагає, щоб в лівій і правій частинах його стояли множини однакового базового типу. Наприклад, VAR t,p: SET OF 'A'..'z'; ….................. t:=['T','u',,'r','b']; p:=t+['o']; {допустиме присвоєння, p=['T','u','r','b','o']} p:=p+['v','6']; {недопустимо - елемент '6' не базового типу} Оскільки у множинах порядок елементів не визначений, то не існує й доступу до окремих елементів. У зв'язку з цим програміст повинен передбачити власними засобами введення і виведення елементів множини.
Дата добавления: 2015-05-07; Просмотров: 494; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |