
- •1. Основи алгоритмізації
- •1. Виконавець алгоритму
- •1. Поняття про навчальну алгоритмічну мову.
- •2. Алфавіт мови
- •1. Поняття величини.
- •2. Оператор присвоювання
- •3. Заголовок алгоритму
- •Відношення між величинами в якості умов
- •2. Поняття розгалуження.
- •2. Основні поняття мови Паскаль
- •Поняття про мови прогамування.
- •3. Опрацювання середовища тп 7.0
- •Алфавіт і словник мови
- •1. Поняття величини.
- •2. Типи даних.
- •Основні стандартні функції та процедури
- •3. Розглянемо деякі функції модуля Graph.
- •2. Складений оператор
- •Тренування
- •2. Порожній оператор.
- •1. Пошук значень функції, які володіють деякою властивістю
- •Закінчити програму.
- •5. Практичне завдання
- •Тренування
1. Поняття величини.
У своїй роботі програміст має справу з таким поняттям, як величина.
Що ж таке величина? З точки зору програмування величини — це дані, що обробляються програмами. Мова Паскаль інтерпретує дані, як а. константи або змінні. Як перші, так і другі визначаються ідентифікаторами (іменами), за допомогою яких можна звертатися для одержання х відповідних значень. Константами називають такі дані, яким присвоюються значення в описовій частині програми, й у процесі виконання програми їх змінювати заборонено. Для визначення констант служить зарезервоване слово const.
Формат опису: Const < ідентифікатор > = < значення константи >;
Приклад: Const Max=1000;
Vxod='сегмент 5';
Є константи, до значень яких можна звертатися без попереднього опису.
Ідентифікатор |
Тип |
Значення |
Опис |
True |
Boolean |
True |
Істина |
False |
Boolean |
False |
Хибність |
Maxint |
integer |
32767 |
Максимальне ціле |
Змінні, на відміну від констант, можуть змінювати свої значення в процесі виконання програми. Кожна змінна і константа належать до визначеного типу даних. Тип констант визначається компілятором автоматично. Тип змінних обов'язково вказується перед тим, як їх використати. Для опису змінних призначено зарезервоване слово var.
Формат опису: Var <ідентифікатор> : <тип даних>;
Приклад: Var Suml, Sum2 : real;
2. Типи даних.
Тип даних — це сукупність властивостей певного набору даних, від яких залежать: діапазон значень, якого можуть набувати ці дані, а також сукупність операцій, які можна виконувати над цими даними.
Усі типи даних у мові програмування Паскаль розділяють на дві групи: скалярні (прості), структуровані (складені). Скалярні типи, у свою чергу розділяють на стандартні та типи користувача. Стандартні типи користувачам пропонують розробники системи Turbo Pascal. Типи користувача — розроблюють програмісти самостійно.
До стандартних скалярних типів належать типи: цілі, дійсні, літерні, булівські. Величини цілих типів можна подавати як у десятковій, так і в шістнадцятковій системах числення. Якщо число подане в шістнадцят-ковій системі, перед ним без пробілу записується знак $. Діапазон зміни шістнадцяткових чисел від $0000 до SFFFF.
Цілі типи даних являють собою значення, що можна використовувати в арифметичних виразах.
Стандартні цілі типи наведено в таблиці:
Тип |
Діапазон |
Необхідна пам'ять (байт) |
Byte |
0...255 |
1 |
Shortint |
-128... 127 |
1 |
Integer |
-32768 ...32767 |
2 |
Word |
0... 65535 |
2 |
Longint |
-2147483648 ...2147483647 |
4 |
Дійсні типи даних являють собою дійсні значення, що використовуються в арифметичних виразах і займають у пам'яті від 4 до 10 байт. У програмі мовою Паскаль можна подавати дані дійсних типів у вигляді як із плаваючою, так і з фіксованою крапкою.
Дійсні десяткові числа з фіксованою крапкою записуються за звичайними правилами арифметики. Зверніть увагу, що ціла частина від дробової відокремлюється десятковою крапкою, а не комою. Якщо десяткова крапка відсутня, число вважається цілим. Перед числом може знаходитися знак «+» або «-». Якщо знак відсутній, то число вважається додатнім.
Дійсні десяткові числа у форматі з плаваючою крапкою подаються в експоненціальному вигляді: тЕ+р, де т- мантиса (ціле або дробове число з фіксованою десятковою крапкою), Е - означає «десять у степені», р -порядок (ціле число). Мантиса має бути нормалізованою, тобто поданою у вигляді числа з діапазону від 0 до 9 (це означає, що крапка завжди знаходиться після першої значущої цифри числа). Однак можна записати мантису у вигляді будь-якого дробового числа з фіксованою крапкою. Нормалізація при цьому виконується системою автоматично. Наприклад:
Число у форматі з плаваючою крапкою |
Значення числа |
0.4500Е+02 |
0.45*102=45 |
-2.600Е05 |
-2.6*105 = -260000 |
+0.45670Е-02 |
0.4567*10-2= 0.004567 |
Стандартний (найчастіше використовуваний) дійсний тип даних наведений у таблиці:
Тип |
Діапазон значень |
Мантиса (кількість значущих цифр) |
Необхідна пам'ять (байт) |
Real |
±2.9*10Е-39 .. 1.7*10Е38 |
11-12 |
6 |
Літерний (символьний) тип може набувати значень ASCII-таблиці комп'ютера. Символьній змінній в пам'яті виділяється один байт, тому можна зберегти тільки один символ ASCII-таблиці.
Булівський тип подається двома значеннями: True (істина) або False (хибність). Цей тип застосовують у логічних виразах і виразах відношення.
Примітка: Для розв'язування майже всіх задач шкільного курсу інформатики учням цілком достатньо використання стандартного дійсного типу даних, але якщо вчитель вважає потрібним, то він може дати учням інші чотири дійсних типа (single, double, extended, comp).
Структуровані типи у своїй основі мають один або кілька скалярних типів даних. До структурованих типів даних належать рядки, масиви, файли, записи і т.д. їх ми розглянемо пізніше.
Перетворення типів:
Ціле значення можна перетворити в дійсне, присвоївши дійсній змінній ціле значення: А:=3+5.
Дійсне значення можна переворити в ціле за допомогою стандартних функцій: TRUNC(X) – ціла частина аргументу; ROUND(X) – аргумент, округлений до найближчого цілого (за правилами математики); INT(X) – аргумент, округлений до найближчого меншого цілого.
Сумісність типів:
При виконанні оператора присвоювання обчислюється вираз, що стоїть в правій частині, і його значення присвоюється змінній в лівій частині. При цьому тип виразу повинен відповідати типу змінної. Для стандартних типів це означає, що вони повинні збігатися. Допускається присвоювання змінній дійсного типу значення цілого типу. Присвоювання ж змінній цілого типу виразу дійсного типу заборонено!
Змінні і константи всіх типів використовуються у виразах
Вираз задає порядок виконання дій над даними і складається з операндов (констант, змінних, звертань до функцій), круглих дужок і знаків операцій. Круглі дужки ставлять, як і в математиці, для керування порядком виконання операцій. Якщо дужки відсутні, то операції виконуються залежно від їх пріоритетів, про що буде сказано далі.
У мові Паскаль є такі операції: арифметичні; відношення (порівняння); логічні. Операції можуть бути унарними та бінарними. У першому випадку операція стосується одного операнду і завжди записується перед ним, у другому операція виражає відношення між двома операндами і записується між ними. Арифметичні операції задають арифметичні дії у виразах над значеннями операндів цілих та дійсних типів. Найчастіше використовуються арифметичні операції, що подані в наступній таблиці:
Операція |
Дія |
Тип операндів |
Тип результату |
Бінарні |
|
|
|
+ |
Додавання |
Цілий |
Цілий |
|
|
Дійсний |
Дійсний |
_ |
Віднімання |
Цілий |
Цілий |
|
|
Дійсний |
Дійсний |
* |
Множення |
Цілий |
Цілий |
|
|
Дійсний |
Дійсний |
/ |
Ділення |
Цілий |
Дійсний |
|
|
Дійсний |
Дійсний |
Div |
Ділення націло |
Цілий |
Цілий |
Mod |
Залишок від ділення |
Цілий |
Цілий |
Унарні |
|
|
|
+ |
Збереження знака |
Цілий |
Цілий |
|
|
Дійсний |
Дійсний |
- |
Інверсія знака |
Цілий |
Цілий |
|
|
Дійсний |
Дійсний |
Операції відношення виконують порівняння двох операндів і визначають значення виразу є істинним або хибним. Результат завжди має булівський тип одного з двох значень: True (істина) або False (хибність).
Операція |
Назва |
Вираз |
Результат |
= |
Дорівнює |
А=В |
True, якщо А дорівнює В |
<> |
Не дорівнює |
А<>В |
True, якщо А не дорівнює В |
> |
Більше |
А>В |
True, якщо А більше В |
< |
Менше |
А<В |
True, якщо А менше В |
>= |
Більше або дорівнює |
А>=В |
True, якщо А більше або дорівнює В |
<= |
Менше або дорівнює |
А<=В |
True, якщо А менше або дорівнює В |
Результатом виконання логічного (булівського) виразу є логічне значення True або False.Виконання кожної операції відбувається з урахуванням її пріоритету. Пріоритети операцій зазначені в наступній таблиці:
Операція |
Приоритет |
Вид операції |
Not, унарні «-»і «+» |
перший (вищий) |
Унарна операція |
*, /, div, mod, and |
другий |
Операції типу множення |
+, -, or |
третій |
Операції типу додавання |
=, <>, <, >, <=, >= |
четвертий (нижчий) |
Операції відношення |
Арифметичні вирази у якості операндів можуть містити імена функцій. Про поняття функції мова буде йти пізніше в курсі програмування, але стандартні функції (cos, sin, x2 та інші) знайомі учням зі шкільного курсу математики, і використання таких виразів у курсі інформатики відрізняється тільки правилами запису (синтаксису). Так, наприклад, у програмуванні аргумент функції обов'язково береться в круглі дужки.
3. Команда присвоювання має вигляд <ім'я змінної> := <вираз>;
Дія команди. Обчислюється вираз і його значення надається змінній. Вираз призначений для описування формул, за якими виконуються обчислення. Вираз може містити числа, змінні, сталі, назви функцій,з'єднані символами операцій.
Змінна і вираз мають бути одного типу або узгодженими: змінним дійсного типу можна надавати значення виразів цілого типу, а змінним рядкового типу присвоювати значення виразів символьного типу, але не навпаки.
Приклад. Розглянемо дію команд присвоєння в програмі Trykutnyk: p:=a+b+c; p:=p/2; s:=sqrt(p*(p-a)*(p-b)*(p-c)). Тут обчислюється значення периметра і воно надається змінній р, півпериметра (надається також змінній р) та площі (надається змінній s).