Інформаційна освітня мережа

ІДЕНТИФІКАТОР, Константа, ЗМІННА

1. При описі алгоритму важливо однозначно визначити не тільки властивості, але і структурні особливості використовуваних в алгоритмі даних, над якими виконуються перетворення в результаті виконання завдання. І перш за все кожен з них повинен бути позначений унікальним ім'ям. Для іменування даних використовуються ідентифікатори (символічні імена).

Ідентифікатор - це послідовність букв і цифр, що починаються з літери.

2. Константа - це елемент даних, який має фіксований ім'я, фіксований тип і фіксоване значення. Для позначення константи використовується її явна запис або вибраний ідентифікатор. Наприклад, позначення 3.141592 задає константу дійсного типу, значення якої фіксоване як число 3.141592. а ім'я (зовнішнє уявлення для користувача ЕОМ) зображується її значенням. Така інтерпретація константи загальноприйнята в математиці. Розробник алгоритму може побажати пов'язати з константою дійсного типу, представленої значенням 3.141592. ім'я P. яке є символічною константою. Константою може бути також і символ (літера), рядок символів, утворена послідовністю літер. Наприклад, слово "ВОЛОДИМИР" задає константу літерного типу, значення якої фіксоване як ланцюжок літер "ВОЛОДИМИР", а ім'я представлено її самим значенням. При необхідності цієї константі можна поставити у відповідність унікальний ідентифікатор (ім'я) і використовувати його як символьну константу.

3. Поряд з константами широко використовуються і змінні. Змінними називаються дані, що мають фіксоване ім'я, фіксований тип і змінюється в залежності від застосовуваних дій значення. Для позначення імені змінної застосовуються ідентифікатори.
Наприклад: A. B. M. N. SUMMA. Z1. Z2. PRIMA14.

4. Приклад. Даний приклад показує використання констант і змінних в реальній задачі.

Припустимо, що потрібно ввести і підсумувати набір екзаменаційних оцінок. В алгоритмі використовуються константи 0 і 999, змінні SUM - сума оцінок, LIM - задає граничну оцінку, MARK - значення чергової оцінки. Нижче представлений алгоритм за допомогою блок-схеми і псевдокоду, а також текст програми на мові Паскаль (рис. 3.1).

5. При виконанні циклічно повторюваних дій часто обчислюють кількість їх повторень. Наприклад, в нашому випадку бажано було б знати число вводяться оцінок, а також середню оцінку (рис. 3.2).

6. Обчислення при фіксованому числі повторень. У багатьох програмах число повторень деякого дії відомо заздалегідь. У таких випадках використовується наступний метод. В даному прикладі число оцінок вводиться на початку програми, потім кожної введеної оцінці відповідає збільшення лічильника оцінок на одиницю, поки його значення не досягне необхідної величини (рис. 3.3, а, б).

Рис 3.3, а

Рис 3.3, б

У наведених прикладах кожна оцінка оброблялася відповідно до свого положення в черзі і тільки один раз. Однак часто буває необхідно зберігати всі дані разом і мати можливість в потрібний момент звертатися до окремого інформаційного елементу. Найпростіше в даному випадку використовувати масиви. Але перед тим слід визначити поняття і складових змінних.

ПРОСТІ І СТРУКТУРОВАНІ ПЕРЕМІННІ

7. Змінні, що мають в якості поточного значення тільки одну величину, називаються простими (або скалярними) змінними. При обробці даних широке поширення має і більш загальне поняття, таке, як структурована (або складова) змінна, тобто змінна, що складається з декількох елементів або компонент, на яку все ж можна посилатися як на єдиний об'єкт. Наприклад, пристрій календаря дозволяє вказувати на певний день, але при цьому існує і спосіб посилання на місяць і рік. В опис типу структурованої змінної повинно входити число складових його елементів і характеристики їх типів.

Якщо всі елементи об'єкта відносяться до одного і того ж типу, то така структурована змінна є регулярною (або однорідної) і може бути представлена ​​у вигляді деякого масиву.

8. Масив - це регулярна структура з так званим випадковим доступом, що означає: все компоненти масиву однорідні, можуть вибиратися довільно і є однаково доступними.

Наприклад, набір оцінок для конкретної навчальної групи може бути організований в масив і позначений одним ідентифікатором:

MARKS = (56 42 89 65 48)

Масив, що складається з однієї послідовності елементів, так як представлений вище називається одновимірним (або вектором).

9. Звернення до окремого елементу масиву може проводитися незалежно від інших елементів по його позиції в масиві. Таким чином, MARKS (1) відноситься до 56, MARKS (2) - до 42, MARKS (3) - до 89 і т.д. Номери позицій в дужках називаються індексами. Як індексів можуть використовуватися змінні, наприклад, MARKS (N) при N = 2 це MARKS (2), тобто 42, а при N = 4 - MARKS (4), тобто 65.

Отже, для позначення окремого елемента масиву до імені масиву додається список індексів, що дозволяє здійснити доступ до конкретного елементу.

Список індексів - це впорядкована множина цілих чисел або змінних цілого типу, однозначно визначають місце розташування окремого елемента масиву. Кожен індекс має свій діапазон змін, званий зазвичай граничної парою.

При роботі з масивами, особливо великого розміру, зазвичай вибірково змінюють окремі компоненти, а не будують заново все складене значення. При цьому змінна - масив розглядається як сукупність складових її змінних "з індексами" і допускається привласнення значень кожному з компонентів. Хоча при вибірковому присвоєнні змінюється значення окремого компонента, з точки зору концепції структурованої змінної слід вважати, що змінюється все складене значення.

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

10. Введення масиву. Перед тим, як масив можна було б обробити, потрібно ввести в нього дані. У прикладі з екзаменаційними оцінками масив MARKS вже заповнений. Число елементів масиву NUM було введено на початку програми. Індекс, який вказує позицію елемента в MARKS, - POSN (рис. 3.4).

11. FOR. TO. У наведених прикладах використовується дуже поширений тип циклу, в якому процедура повторюється, починаючи від початкового значення (POSN = 1) і далі при зростанні індексу POSN на 1 до тих пір, поки не буде досягнуто кінцеве значення NUM. Використання циклу веде до скорочення псевдокоду (рис. 3.5).

НАСТУПНІ МАНІПУЛЯЦІЇ З масиву

12. У цьому прикладі кожна екзаменаційна оцінка була введена в масив одного разу, щоб використовуватися в подальшому. При введенні даних підраховується загальна сума SUM для того, щоб розрахувати середню оцінку MID. Також можна обчислити найвищу оцінку MAX, найнижчу оцінку MIN, число оцінок PAS, які вище прохідного балу 45 (рис. 3.6).

Щоб отримати цю таблицю, дотримуйтесь вказівок, поданих етапах псевдокоду і реєструйте одержувані значення в таблицю. Таким чином, ви можете перевірити правильність будь-якої блок-схеми або псевдокоду.

13. Елементи масиву. Окремі інформаційні елементи в масиві часто називаються елементами масиву. Строго кажучи, інформаційний елемент займає елемент масиву, тобто елементи є позиціями, в які інформаційні елементи можуть бути поміщені або видалені.

15. У двовимірних масивах або матрицях елементи організовані в рядки і стовпці, і такі масиви використовуються для організації однакових за типом, але різних за призначенням даних. Наприклад, екзаменаційні оцінки класу з кількох предметів можуть бути поміщені в масив таким чином:

Прізвище учня або

Характерним для таблиці є використання одного з полів в якості ключа, за призначенням якого можна здійснити доступ до необхідної записи. В даному прикладі у вигляді ключа можна використовувати ім'я міста і здійснювати пошук в таблиці по його назві.

19. При вирішенні завдань часто потрібно обробляти великі обсяги даних (довідники розцінок, тексти, графіки і т.п.). Під файлом будемо розуміти інформацію, що має певну логічну структуру і ім'я. Іншими словами, файл - це будь-який набір елементів одного і того ж типу.

Класифікуючи файли, виділимо файли даних (наприклад файл відомостей про учнів) і програмні файли. тобто файли, даними яких є комп'ютерні програми, вони можуть бути лічені в основну пам'ять із зовнішнього на час їх використання.

По відношенню до програми файли можуть бути зовнішніми і внутрішніми. Внутрішніми файлами є такі, які створюються, використовуються і існують тільки під час роботи даної програми. Файли, які існують поза програмою, називають зовнішніми файлами. В якості носіїв зовнішніх файлів зазвичай використовують магнітні диски, стрічки.

20. Число елементів у файлі, який називається довжиною файлу. не фіксоване. В цьому і є основна відмінність файлу від масиву. Файл, який не містить жодного елемента, називається порожньою - його довжина дорівнює нулю.

ЕЛЕМЕНТИ ФАЙЛА

21. Файл складається з компонентів одного і того ж типу, але цей тип може бути будь-яким (як простим, так і складеним) за винятком файлового. Наприклад, може бути файл, який містить числа, записи (тобто зберігає таблицю). Текстовим файлом називається послідовність символьних рядків змінної довжини, розділених спеціальними керуючими символами "кінець рядка".

За останнім елементом файлу поміщається спеціальний керуючий символ "кінець файлу". Зазвичай з ним зв'язується функція логічного типу EOF. яка приймає значення ІСТИНА. коли досягнуто кінець файлу, і БРЕХНЯ в іншому випадку.

ДОСТУП ДО ФАЙЛІВ

22. Файли за методом доступу до їхніх елементів поділяються на файли послідовного і прямого доступу. У файлах послідовного доступу кожен елемент стає доступним тільки після перебору всіх попередніх елементів. Файли прямого доступу дозволяють звертатися до кожного елементу безпосередньо по його порядковому номеру в файлі.

23. Доступ до елементів файлу здійснюється через покажчик файлу. При читанні або запису цей покажчик переміщається до наступного елементу і робить його доступним для обробки. У кожен момент доступний для читання (записи) тільки той елемент файлу, на який встановлено покажчик.

ОСНОВНІ ОПЕРАЦІЇ З ЗОВНІШНІМИ ФАЙЛАМИ

24. Розглянемо операції з зовнішніми файлами.

Читання файлу - введення даних із зовнішнього файлу в оперативну пам'ять ЕОМ. Необхідно виконати наступні дії:

  • відкрити файл для читання;
  • ввести дані файлу в програму;
  • закрити файл для читання.

Запис в файл - висновок результатів програми з оперативної пам'яті на зовнішній пристрій, тобто створення нового файлу на зовнішньому носії. Необхідно виконати наступні дії:

  • відкрити файл для запису;
  • вивести дані з програми в файл;
  • закрити файл для запису.

Читання і запис - два основних дії над послідовними файлами. Всі інші дії являють собою поєднання записи і читання файлу.

Наприклад, додавання даних до вже існуючого файлу:

  • відкрити вже існуючий файл;
  • встановити покажчик файлу за останнім його компонентом;
  • записати додаткові дані;
  • закрити файл.

25. Розглянемо приклад алгоритму (рис. 3.8. А, б), де проводиться читання файлу з відомостями про студентів, що складається із записів наступної структури:

В даному прикладі послідовний файл відомостей про студентів обробляється з метою отримання відомості результатів іспиту. Записи по черзі зчитуються в пам'ять один раз. У звіті для кожного студента разом з його оцінкою друкується: FAIL - для оцінок нижче 45; PASS - для оцінок від 45 до 69; CREDIT - вище 70.

Рис 3.8, а

КОРОТКО ПРО ГОЛОВНЕ

  1. Ідентифікатор - послідовність літер і цифр, що починається з букви, для іменування даних.
  2. Константа - елемент даних з фіксованим ім'ям, типом і значенням.
  3. Змінні - дані з фіксованим ім'ям, типом, але постійно змінюваних значенням.
  4. Прості змінні - як поточного значення мають одну величину.
  5. Складові (або структуровані) змінні складаються з декількох компонент.
  6. Масив - це сукупність однотипних елементів певного розміру, де кожному елементу поставлений у відповідність свій індекс. У двовимірних масивах (матрицях) є окремі індекси для стовпців і рядків.
  7. Рядок - це впорядкована послідовність символів.
  8. Запис - сукупність різнотипних компонентів - полів.
  9. Файл - пойменований набір однотипних елементів нефіксованим довжини.
  10. За методом доступу файли бувають прямого і послідовного доступу.