Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Паскаль.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆
      1. Розділ текстів процедур та функцій

У заголовкові вказується ім`я процедури (функції) і список формальних параметрів, за допомогою яких у процедуру (функцію) передаються різні величини (наприклад, значення змінних).

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

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

      1. Основний блок програми

Основний блок програми складається з послідовності операторів мови ТP, які виконують обробку даних та займаються введенням і виведенням. Робота ТР-програми завжди починається з першого оператора основного блоку програми. Тіло основного блоку обмежено операторами BEGIN та END. Після оператора END ставиться крапка.

Оператори мови ТР 7.0 являють собою неподільні елементи програми, котрі дозволяють виконувати різні алгоритмічні дії. Всі оператори можна умовно розбити на дві групи: прості (які не містять у собі інших операторів) та структурні (які складаються з інших операторів).

До простих операторів відносяться:

  • оператори присвоєння (:=);

  • оператори безумовного переходу (GOTO);

  • оператори звернення до процедури (функції);

  • пустий оператор.

До структурних операторів належать:

- складений оператор (послідовність операторів , що містяться між ключовими словами BEGIN i END);

  • умовні оператори (IF, CASE);

  • оператори циклу (REPEAT, WHILE, FOR);

  • оператори під`єднання (WITH).

2.2. Типи даних мови тр

Для зберігання даних використовуються константи та змінні мови ТР. Кожна константа й змінна має ім`я і характеризується типом даних, які можуть у ній зберігатися. Кожний тип даних визначає:

а) діапазон значень, що можуть приймати змінні та константи цього типу;

б) набір операцій, які можна застосовувати до значень даного типу;

в) формат представлення числа в пам`яті ЕОМ. Ієрархію типів даних мови ТР 7.0 показано на рисунку 2.2.1.

Рис.2.2.1. Ієрархія типів даних мови ТР7.0

2.3. Поняття алгоритму

Алгоритмом називається набір правил, дотримуючись яких можна розв`язати певну задачу. Він являє собою набір елементарних дій (кроків), котрі виконуються послідовно. В програмуванні заведено алгоритми представляти у вигляді графічної блок-схеми. Для прикладу на рисунку 2.3.1. показано алгоритм пошуку серед двох чисел А і В максимального числа й присвоєння його значення змінній С.

При побудові алгоритму у вигляді графічної блок-схеми використовують такі фігури (див. рис.2.3.1).

Основні правила побудови графічної блок-схеми наступні:

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

  2. В кожний ромб уходить хоча б одна стрілка, а виходить строго дві стрілки.

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

Рис.2.3.1. Символи, що найчастіше використовуються у схемах алгоритмів

Рис.2.3.2. Алгоритм пошуку максимального числа

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

Виходячи з цього, назвемо нашу програму MAXIMUM:

PROGRAM MAXIMUM {ім’я програми} (1)

Тут у фігурних дужках указані коментарі, що не сприймаються компілятором і служать лише для пояснень виконуваних у програмі дій.

Другий підрозділ, де вказуються директиви компілятору, є необов`язковим, і на перших етапах програмування ми не будемо його записувати.

ТР 7.0 містить 10 стандартних модулів, які можна використовувати (підключати) в програмі користувача за допомогою оператора USES, але найбільш часто застосовуються модулі SYSTEM та CRT. Оскільки модулі SYSTEM усі програми використовують автоматично, то залишається записати:

USES CRT; {підключення стандартного модуля} (2)

Так, під`єднавши модуль CRT, є можливість виконувати очищення екрана монітора процедурою CLRSCR перед початком роботи програми для зручності переглядання результатів її роботи (процедура CLRSCR уходить до складу модуля).

Глобальні мітки, константи та типи в даній програмі не використовуються, тому наступні три підрозділи не вказуються. Перед описом змінних програм необхідно встановити тип даних, які будуть у них зберігатися. В нашому випадку такими даними є дійсні числа, що мають тип REAL (див. рис. 2.2.1.). Отже, запишемо:

VAR A, B,C:REAL; {оголошення глобальних змінних} (3)

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

CONST A=3.5; B=11; {оголошення глобальних констант} (3a)

VAR C:REAL; {оголошення глобальних змінних} (3б)

Як бачимо, при описі констант їм відразу надаються конкретні значення, причому ці значення однозначно визначають тип відповідної константи. Отже, А — константа дійсного типу (REAL), а В — цілого типу (INTEGER).

Таким чином, об`єднавши вирази (1) – (3), отримаємо перший розділ нашої програми:

{розділ оголошень та узгоджень}

PROGRAM MAXIMUM;

USES CRT;

VAR A, B, C:REAL;

Зверніть увагу, що в мові ТР кожна дія (оператор) відокремлюється від іншої за допомогою крапки з комою (;).

Розділ текстів процедур і функцій поки що не будемо використовувати, тому перейдемо відразу до розділу основного блоку програми.

Спочатку очистимо екран монітора від результатів роботи попередніх програм:

CLRSCR; {очищення екрана монітора} (4)

Наступний крок згідно з алгоритмом на рисунку 2.3.1. – уведення даних А і В. Нехай комп`ютер сам запропонує нам зробити це:

WRITELN (уведіть два числа: ’); {запрошення} (5)

Оператор WRITELN виводить на екран монітора текст, записаний у круглих дужках і виділений апострофами (`).

У відповідь на це запрошення введемо значення чисел А та В, використовуючи оператор уведення:

READLN(A, B); {уведення значень змінних А і В} (5а)

Оператор READLN буде чекати до тих пір, поки програміст не введе два числа, натискаючи після кожного клавішу [ENTER]. Після цього він присвоює введені значення змінним А та В і програма MAXIMUM продовжить свою роботу.

Отже, операція введення початкових даних програми матиме вигляд:

WRITELN (‘ Уведіть два числа: ’);

READLN (А,В);

Таким чином, використання операторів WRITELN та READLN дає змогу побудувати діалог між комп`ютером і користувачем, що робить програму більш зручною й привабливою. Хоча можна було б зробити і простіше, ввівши значення А і В при описі їх як констант (див. вирази (3а)) або використовуючи оператор присвоєння (:=) в основному блоці програми.

А=3,5; В=11; {присвоєння значень змінним} (5б).

Відповідно до наступного кроку алгоритму необхідно зрівняти значення змінних А й В і максимальне з них присвоїти змінній С. У мові ТР це можна зробити з використанням умовної конструкції IF…THEN…ELSE:

IF A>B {умовна конструкція}

THEN C:=A

ELSE С:=В;

У перекладі на літературну мову це означає таке: “якщо (IF) змінна А більша, ніж змінна В (А> В), то (THEN) змінній С присвоїти значення змінної А (С:= А); інакше (ELSE) змінній С присвоїти значення змінної В (С:= В)”.

Нарешті, потрібно вивести на екран монітора кінцевий результат роботи програми MAXIMUM, тобто значення змінної С, яка тепер дорівнює максимальному з чисел А і В:

WRITELN (‘ Максимальне значення: ’, С); {виведення} (7)

На екрані монітора услід за текстом, виділеним апострофами, виводиться значення змінної С.

У результаті програма мовою ТР, що реалізує алгоритм рисунка 2.3.1, запишеться:

PROGRAM MAXIMUM; {пошук максимального числа}

USES CRT;

VAR A, B, C:REAL; {оголошення змінних програми}

BEGIN {початок основного блоку програми}

CLRSCR; {очищення екрана}

WRITELN (‘ Уведіть два числа:’);

READLN (A, B); {уведення даних}

IF A>B {визначення максимального числа}

THEN С:=А

ELSE С:=В

WRITELN (‘ максимальне значення: ’, С) {виведення}

END. {кінець програми}

Після завершення виконання цієї програми на екрані монітора побачимо таке:

Уведіть два числа:

3.5

11.0

Максимальне значення: 11.0