Комп'ютерна програма — це алгоритм опрацювання даних, записаний спеціальною мовою та призначений для виконання комп'ютером.
У процесі своєї роботи програма опрацьовує дані.
Дані, які потрапляють до програми від певних пристроїв (наприклад, з клавіатури або від датчика температури) або від іншої програми, або з іншого джерела (наприклад, з текстового файлу), називають вхідними (початковими) даними.
Під час виконання програми утворюються і опрацьовуються й інші дані, які називають проміжними даними.
Якщо метою виконання програми є отримання певних даних, то ці дані називають вихідними (результуючими) даними.
Мова програмування- це мова, яку використовують для запису алгоритмів, призначених для виконання комп’ютером.
Мова програмування, як і будь-яка інша мова, має такі складові:
1) набір символів, з яких утворюють слова та речення цієї мови - алфавіт;
2) сукупність спеціальних слів, які мають однозначне пояснення та застосування – словник;
3) систему правил складання базових конструкцій мови – синтаксис;
4) правила семантики, що пояснюють, яке смислове значення має опис кожної з вказівок програми і які дії повинен виконати комп’ютер під час виконання кожної з таких вказівок.
Використання символів, що не входять до алфавіту мови програмування, неправильне написання словникових слів, порушення синтаксичних правил призводять до неможливості виконання комп'ютером відповідної команди. Такі порушення називають синтаксичними помилками.
Чим відрізняються мови програмування?
Мови програмування можна поділити на дві групи: мови низького рівня та мови високого рівня.
Машинна мова– набір команд, які виконуються безпосередньо центральним процесором. Працювати людині-програмісту з такою мовою важко через велику кількість команд у двійкові формі.
До мов низького рівня належать мова асамблер. У мові асамблера виконуються символьні позначення команд, які легше зрозуміти й запам’ятати.
Програма, записана мовою програмування високого рівня, містить команди, що схожі на звичайні слова, записані англійською мовою. Наприклад, програма, записана мовою програмування Python, містить команди print – друкувати, while – поки, if – якщо тощо.
За технологією програмування розрізняють:
а) Процедурні мови – програма, складається із набору підзадач (процедур), які реалізують завдання;
б) об’єктно-орієнтовні– головними елементами алгоритму є клас – новий тип даних, що розширює мову, й об’єкт, що має властивості та методи – дії, які виконуються об’єктом;
в) декларативні– мови створення програм зі штучним інтелектом;
г) мова скриптів(мова сценаріїв) – мова, розроблена для запису «сценаріїв» – послідовностей команд, які користувач може виконувати на комп’ютері.
Які засоби необхідні для виконання створених програм?
Транслятор– програма, яка записує команди програми, описаної деякою мовою програмування, машинною мовою
Компілятор зчитує одразу всю програму й переписує її машинним кодом або мовою асамблер. Процес трянсляції, який при такому підході називаюбтькомпіляцією, відбувається один раз, і результат перекладу зберігається в окремому файлі.
Інтерпретатор зчитує вихідний код програми по одній команді й одразу намагається їх «перекладати» та виконувати. Це дає змогу програмісту швидше перевіряти правильність виконання програми та знаходити помилки в коді.
Середовище програмування– це комплекс програм, що містить засоби автоматизації процесів підготовки та виконання програм користувача, а саме:
1) редактор текстів програм– у ньому можна створювати й редагувати текст програми;
2) довідково-інформаційнусистему про мову програмування та середовище;
3) бібліотеки, у яких зберігаються найбільш уживані фрагменти програм або цілі програми;
4) компілятор чи інтерпретатор, використання якого дає змогу швидко знайти в програмі помилку та виправити її;
5) покроковий «виконавець»програми.
Перш за все, слід пам'ятати, що вивченням мови програмування - це знайомство з формальними правилами запису алгоритмів для їх подальшого виконання комп'ютером. Формальність ця виникає з самих принципів, закладених в архітектуру обчислювальних пристроїв, і жорсткості математичної логіки. Тому слід сприймати всі досить строгі правила як неминучість, налаштувати себе на серйозну, скрупульозну, деколи складну роботу.
Щоб писати програми на мові Pascal, необхідно увійти в середовище програмування. Якщо у вас немає цієї програми, то ви можете викачати її на будь-якому сайті.
Якщо ж вона у вас є, то приступимо до процесу навчання.
Пройшовши всі уроки ви отримаєте приклади розв'язання завдань, уявлення про написання програм в цілому, а також вивчите мову програмування Turbo Pascal.
Як і будь-який алгоритм, що є послідовністю інструкцій, програма на мові Паскаль складається з команд (операторів), записаних в певному порядку і форматі.
Команди дозволяють отримувати, зберігати і обробляти дані різних типів (наприклад, цілі числа, символи, рядки символів, т.д.). Проте окрім команд в записі програми беруть участь ще так звані "службові слова". Це і є елементи формальності, організуючі структуру програми. Їх не так багато, але їх значення важко переоцінити. Службові слова можна використовувати тільки по своєму прямому призначенню. Перевизначати їх не дозволяється.
Основне призначення комп'ютера - полегшити людині роботу з великими об'ємами інформації, тому переважна більшість програм побудована поодинці, досить простому принципу: отримання даних із зовнішнього світу (введення), обробка їх по відповідному алгоритму, зберігання необхідної інформації і вивід в зовнішній (по відношенню до комп'ютера) світ отриманих результатів. Всі ці дії реалізуються через наявні в мовах програмування команди, алгоритмічні структури і структури даних.
Отож, приступимо!
1. Алфавіт
Абетка (алфавіт) — це набір символів, які використовуються для написання програм.
Абетку мови Паскаль складають:
1) Літери A..Z, a..z та символ підкреслювання "_".
2) Цифри від 0 до 9.
3) Спеціальні символи + -*/ = <>(){}[].,:;#$'".
4) Службові слова:
and - і, та
array - масив
begin - початок
case - варіант
const - константа
div - ділення
do - виконати
downto - зменшуючи до
else - інакше
end - кінець
file - файл
for - для
function - функція
goto - перейти до
if - якщо
in - в
label - мітка
mod - мод, остача
nil - нуль, нічого
not - не
of - з
or - або, чи
packed - упакований
procedure - процедура
program - програма
record - запис
repeat - повторювати
set - множина
then - то
to - до (збільшуючи до)
type - тип
until - доти поки
var - змінна
while - поки
with - з
5) Деякі послідовності з двох спеціальних символів:
: = надати значення
>= більше або дорівнює
<= менше або дорівнює
<> не дорівнює
.. роздільник діапазонів
(* або { початок коментарію
*) або } кінець коментарію
Службові слова інтерпретуються як цілі символи, про значення яких ти дізнаєшся у відповідних розділах.
Програма мовою Паскаль оперує різноманітними об'єктами, що містять або певні дані (константи, змінні, типи, файли), або виконують певні дії (процедури та функції). Кожний об'єкт позначається іменем (ідентифікатором). Іменем може бути будь-яка послідовність латинських літер, цифр, знаку підкреслювання, що починається з літери чи знаку підкреслювання (пробіли в іменах ставити заборонено). Заборонено в якості імен використовувати службові слова. Довжина ідентифікатора не повинна перевищувати 127 символів.
Великі та малі літери в іменах транслятор не відрізняє. Сполучення цих літер використовується для того, аби зручніше було читати інформацію. Числа можуть бути цілими (тип integer) та дійсними (тип real). Дійсні числа записуються у 2-х формах: натуральній (з фіксованою крапкою) та експоненціальній (з плаваючою крапкою).
Приклади:
1) 0; 12; 6; -146 - цілі;
2) 1.2; -0.4; 5.13 - дійсні з фіксованою крапкою;
3) 10.43Е-02; 1е20 - дійсні з плаваючою крапкою.
Записи останнього прикладу відповідають науковій формі запису чисел. Літера Е (чи е) означає "помножити на 10 в степені". Тому число 1е20 читається так: "одиниця, помножена на 10 в степені 20".
2. Структура програм
Програма мовою Паскаль складається з заголовка, опису даних та тіла програми, що являє собою блок команд обробки даних, обмежений словами BEGIN (початок) та END (кінець). Закінчується програма крапкою.
Правила мови Паскаль передбачають єдину для всіх програм форму основної структури:
PROGRAM ім'я;
Var опис даних;
BEGIN
оператор; { тіло програми }
……………
оператор;
END.
Приклад програми, що обчислює площу круга та довжину кола:
Program circle; {заголовок}
const pi=3.141593; {константа}
var r,len,s : real; {змінні}
BEGIN
readln (r); {ввести радіус}
len:=2 * pi * r; {обчислити довжину кола}
s:=pi * r * r; {обчислити площу}
writeln ('Довжина=', len ,' площа=' ,s) {вивести результати}
END.
У фігурних дужках записуються коментарі (пояснення до програми), які транслятором мови ігноруються. Заголовок програми і кожен опис повинні закінчуватися крапкою з комою. Команди (оператори) у тілі програми повинні відокремлюватися одна від одної крапкою з комою, навіть якщо вони записуються окремими рядками. Окремі змістові блоки програми прийнято записувати з відступом ("сходинками"), що робить програму більш зручною для читання, хоча транслятору це байдуже, навіть якщо б ви записали всю програму одним рядком. Перелік усіх даних із зазначенням їх типів на початку програми не тільки полегшує контроль за їх використанням, але й дозволяє транслятору знаходити та повідомляти вам про помилки, наявні в тілі програми та пов'язані з невірною обробкою даних.
Правила написання Pascal-програм
1. Основний текст будь-якої програми починається службовим словом begin і закінчується словом end, після чого слідує крапка. Без крапки програма вважається не закінченою. І навпаки, якщо в програмі знаходиться крапка, то всі команди, що слідують за нею ігноруються (оскільки програма завершена).
2. В кінці кожної команди ставиться крапка з комою (“;”) - символ, що розділяє команди між собою.
3. Після команди, яка знаходиться перед end, крапку з комою (“;”) бажано не встановлювати, оскільки буде вважатись, що перед end є ще один порожній оператор.
4. Команди в Pascal можна записувати в один рядок, хоча для полегшення читабельності програми бажано кожну команду вказувати з нового рядка.
5. Якщо користувач бажає помістити в текст програми коментарі, то їх необхідно вказувати у фігурних дужках (замість фігурних дужок можна вказувати альтернативний набір символів - “(* ,,, *)” ).
6. При вказанні в програмі виразів, що містять будь-які дужки потрібно пам’ятати, що кількість закритих та відкритих дужок повинна бути однаковою.
7. Якщо потрібно використати декілька операторів у якості одного складеного оператора, то їх слід взяти в операторні дужки, що починаються словом begin і закінчуються end. При цьому кількість слів begin у програмі повинна співпадати з кількістю слів end.
8. Усі змінні, константи та типи даних, що використовуються в програмі, повинні бути описані в розділах const, type та var.
Необов'язкові але бажані правила:
1. Після команди begin всі наступні команди, аж до відповідного йому end, бажано записувати з відступом (наприклад, на величину слова begin).
2. Назви всіх команд бажано записувати малими літерами, а змінні - великими.
Завдання 1.
Знайдіть в Інтернеті відомості про історію виникнення різних мов програмування. Сплануйте, як можна було б подати знайдені відомості на лінії часу та в якій програмі зручно було би створити лінію часу. Створіть її на додаткову оцінку.
Обговорюємо
1. Що таке мова програмування? Чим вона відрізняється від мови людського спілкування?
2. Чим відрізняються мови програмування низького та високого рівнів?
3. Назвіть приклади мов програмування високого рівня. Для яких завдань їх використовують?
4. Для чого використовують програми-транслятори та якими вони бувають?
5. Що таке середовище програмування та які його складові?
Рефлексія
1. Що нового ви сьогодні дізналися?
2. Чого навчилися?
3. Чи виникали труднощі?