Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratorni_roboti_Osnovi_programuvannya_dlya_R...doc
Скачиваний:
16
Добавлен:
10.11.2019
Размер:
878.08 Кб
Скачать

Запитання для контролю та самоконтролю

  1. У чому полягає різниця між простими та структурованими типами даних?

  2. Які в мові Turbo Pascal використовуються прості та структуровані типи даних?

  3. Що таке масив? Які його складові елементи? Як звертатися до елементів масиву?

  4. Які різновиди масивів можна використовувати в програмах? У чому їх особливості?

  5. Які алгоритмічні структури оптимізують обробку елементів масивів?

  6. Які обмеження необхідно враховувати при використанні масивів?

  7. Про що йде мова в задачі сортування? Які методи використовуються для її розв’язання? У чому полягають відомі методи сортування?

  8. Як формулюється задача пошуку? Якими методами її вирішують? У чому вони полягають?

  9. Як зберігається масив в оперативній пам’яті?

  10. Як працює алгоритм пошуку в масиві найбільшого (найменшого) елемента?

  11. Які правила пошуку суми елементів масиву?

  12. Які правила пошуку добутку елементів масиву?

  13. Як організувати виведення елементів одновимірного масиву у рядок та у стовпчик? Чому не раціонально виводити у стовпчик масив, де кількість елементів перевищує число 24?

  14. Як організувати виведення елементів двовимірного масиву у вигляді таблиці?

  15. Які існують інструменті позиціювання екрану в текстовому режимі? Як скористуватися цими інструментами для виведення таблиці?

  16. Як за описом визначити який об’єм пам’яті виділяється для масиву?

Лабораторна робота №6 символьний тип даних, рядки, масиви рядків Теоретичні відомості

Символьний тип являє собою тип даних, призначених для збереження одного символу (літери, знака або коду). Розрізняють символьні константи та змінні. Символьна константа - один символ в лапках (наприклад, ’?’, ’F’, ’7’). Символьна змінна - описується словом char.

Наприклад, рядок програми var S, Litera, CapsLitera : char; означає, що в програмі буде використано 3 символьних змінних S, Litera, CapsLitera.

В зв’язку з тим, що символи закодовані в таблиці ASCII, над ними можна виконувати операції порівняння (за кодом). Деякі символи не мають графічного зображення тому для звернення до них (а взагалі до кожного ASCII-символу) можна використати таку форму запису, яка складається із символу дієз (#) і числового коду символу, наприклад, #13. Будь-який об’єкт типу char (константа, змінна) займає 1 байт пам’яті.

До стандартних функцій над символьними даними відносять:

Chr(n) - визначення символу за порядковим номером n (ASCII-коду);

Ord(s) - визначення порядкового номера за символом s;

UpCase(s) - перетворення рядкових латинських літер у прописні.

Тип даних string (рядок) спеціально призначений для обробки рядків (ланцюжків символів). Змінна типу string складається з елементів типу char. Кажуть, що рядок - це масив символів, що компактно зберігаються. Змінні типу string можуть бути оголошені в такий спосіб:

var

Ім'я_змінної_1 : string;

Ім'я_змінної_2 : string[n];

Тобто вказується Ім'я_змінної (ідентифікатор) і зарезервоване слово string. Якщо існує необхідність економити ресурси статичної пам’яті, в квадратних дужках вказується максимальний розмір рядка - кількість символів рядка, що можуть зберігатися в цій змінній. Якщо максимальний розмір рядка не зазначений, то він автоматично приймається рівним 255 - максимально можлива довжина рядка. Реально у пам’яті резервується на одиницю довший масив - додається нульовий елемент.

До стандартних функцій над даними типу string відносять:

  • функція Length® - визначення фактичної довжини вказаного текстового рядка R (рядкової константи або змінної);

Зауваження: Ця функція читає значення нульового елементу рядка, де зберігається фактична його довжина.

  • функція Copy(R,bp,k) - копіювання фраґмента деякого рядка R в інший рядок, bp - номер позиції символу, з якого треба почати копіювати, k - кількість символів для копіювання;

Зауваження: Результатом роботи функції є новий рядок.

  • функція Pos(SubR,R) - визначення позиції входження деякого рядка символів SubR у заданий рядок R;

Зауваження: Дає змогу знайти тільки перше входження, якщо шуканий ланцюжок символів у заданому рядку міститься декілька разів. Дає результатом 0, якщо такий ланцюжок у рядку відсутній.

  • функція Сoncat(R1,R2,R3,…) - з'єднання декількох рядків в один;

Зауваження: Результатом роботи функції є новий рядок.

  • процедура Delete(R,bp,k) - з рядка R видаляє частину, де bp - номер позиції символу, з якого треба почати видаляти, k - кількість символів для видалення;

  • процедура Insert(SubR,R,np) - вставка рядка SubR в рядок R, де np - номер позиції, починаючи з якої SubR буде розміщено в новому рядку R.

Зауваження: Застосування процедур Delete та Insert змінює фактичну довжину рядків.

До операцій над рядковим типом відносять порівняння (=, <>, <, >) та конкатенацію (об’єднання, позначається знаком +).

Зауваження: Вищезазначені операції над символьним та рядковим типами обумовлені тим, що кожен символ має свій зафіксований код (номер) у так званій таблиці символів ASCII. Це дає змогу впорядковувати масиви рядків.

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