Записати в зошиті код програми для множення двох натуральних чисел. (зверніть увагу на тип даних!)
Запис має бути розбірливим. Роботу сфотографувати і відправити на Вайбер 0508736592.
Налагодження програм
«Все пізнається через працю, через подолання власних помилок, через процес розв'язування завдань» (С. М. Окулов, «Основи програмування»). Як би ретельно програміст не писав програмний код, він може припуститися помилок у тексті програми. Нам потрібно навчитися розуміти і усувати помилки в програмному коді.
Помилки при створенні та виконанні програм
Створений у середовищі програмування проект може не виконуватися взагалі, або результат його виконання не відповідатиме очікуваному результату. Це відбувається тоді, коли при складанні алгоритму розв’язування завдання чи написанні коду програми були допущені помилки. Розрізняють три групи помилок:
· синтаксичні;
· помилки під час виконання;
· логічні.
Синтаксичні помилки можна виявити як у процесі написання програмного коду, так і після запуску проекту на виконання. Якщо деяка команда у програмному коді написана програмістом не за правилами, прийнятими в мові програмування, то вона може набувати іншого кольору, відмінного від кольору правильно написаних команд.
Після запуску проекту на виконання, якщо у програмному коді така помилка не була виправлена, у середовищі Lazarus у вікні повідомлення про хід компіляції проекту отримуємо номер рядка програмного коду та позиції об’єкта в рядку, де допущена помилка, й опис помилки.
У вікні редактора коду рядок, на якому «зупинився» процес компіляції, буде позначено.
Рядок, у якому допущена помилка, може бути вказаний не точно. Наприклад, повідомлення про пропущений символ «;» у рядку під номером 43 у вікні повідомлення буде позначено рядком із номером 44.
Типовими є помилки, що позначають невідповідність типів описаних величин і значень, які їм присвоюються у процесі виконання програми.
Наприклад, коли текстовій величині Editl.Text присвоюється числове значення.
До помилок під час виконання належать помилки, пов’язані з неправильними числовими обчисленнями, помилки при знаходженні значень
величин за формулами. їх розпізнають тільки під час виконання програми.
У середовищі Lazarus такі помилки називають винятками, вони супроводжуються виведенням на екран повідомлення про помилку.
Логічні помилки — це помилки алгоритму, який лежить в основі програми. Результат, отриманий у ході виконання програми, не збігається з очікуваним результатом. Такі помилки не можна виявити засобами програмного середовища.
Налагодження програми в середовищах програмування
Виправити синтаксичні помилки та помилки часу виконання програми можна після їх виявлення. А тоді знову запустити проект на виконання. Для того щоб перевірити наявність логічних помилок, потрібно запустити програму з тестовим (вхідним) набором даних і перевірити, чи збігається результат «ручного» підрахунку та програмного.
Процес пошуку логічних помилок у тексті програми з використанням тестових наборів вхідних даних називають тестуванням програми.
Допомагають у пошуку логічних помилок коментарі, які можна включати до тексту програми. Коментарі — це текст, який не виконується після запуску програми, а розміщується для пояснення структури програмного коду.
Мовою програмування Free Pascal коментарі розпочинаються символами // — якщо коментар не займає більш ніж рядок, {} або (* *) — коментар, який може займати декілька рядків.
Якщо текст програми великий, то для пошуку місця логічної помилки інколи зручно тестувати програму не повністю, а частинами. Фрагменти програми, які тимчасово не потрібно використовувати у програмному коді, позначають як багаторядкові коментарі. Тоді після запуску проекту на виконання закоментований фрагмент програмного коду не буде виконуватись.
Ще одним способом виявлення у програмі логічних помилок є її покрокове виконання, або трасування. Крок виконання програми — це рядок програми. Для виконання одного кроку програми в середовищі Lazarus натискують клавішу F7 або в меню Виконати обирають вказівку Вступити.
Після першого натиснення клавіші F7 відбувається компіляція проекту, і якщо проект не містить синтаксичних помилок, то починається його виконання, при цьому з’являється вікно програми в машинних кодах.
З кожним наступним натисненням клавіші F7 виконуватимуться команди наступного рядка: буде відкрито вікно програми, у яке можна ввести дані, змінним величинам буде присвоєно введені значення, виконані обчислення і т.д., насамкінець — виведений результат. Щоб під час виконання програми слідкувати за зміною значень змінних, налаштовують параметри вікна Властивості Спостерігання, виклик якого здійснюється вказівкою Додати спостереження меню Виконати або натискуванням клавіш Ctrl+F5.
У полі Вираз записують ідентифікатори змінних, за якими будуть спостерігати в ході покрокового виконання програми. Значення введених змінних буде відображатись у вікні Список спостережень, яке з’являється після натиснення кнопки Гаразд. Слідкуючи за значеннями змінної, за якою спостерігають, і порівнюючи їх з очікуваними, можна помітити, у який момент виконання програми це значення не відповідає очікуванням. Саме воно може бути причиною логічної помилки.