SlideShare a Scribd company logo
1 of 24
8
За новою програмою
Урок
29-30
Налагодження
програм
8
Тестування програмиРозділ 6
§ 6.2
Ви вже знаєте, що під час створення проекту можуть виникати
синтаксичні помилки. Синтаксичні помилки, які не помітив автор
проекту, знаходить компілятор на етапі компіляції під час запуску
проекту на виконання. Компіляція – це процес перетворення
тексту програми на виконувану програму. Після компіляції
повідомлення про помилки з’являється у вікні повідомлення.
Потрібно виправити всі такі помилки і знову запустити на
виконання нову версію проекту.
Розрізняють три групи помилок:
Синтаксичні
Помилки під
час виконання
Логічні
8
Тестування програмиРозділ 6
§ 6.2
В свою чергу синтаксичні помилки це помилки
написані або розміщення ключових слів.
Логічні помилки це ті помилки, які припущені під час
розробки алгоритму.
Помилки виконання це спроби опрацювати не
Синтаксичні
Помилки під
час виконання
Логічні
8
Тестування програми
Якщо виконання проекту неочікувано переривається
або результат його виконання неправильний, то
говорять, що проект містить логічні помилки.
Розділ 6
§ 6.2
Одним зі способів виявлення логічної помилки є
створення тестових наборів вхідних даних. Для кожного
із цих наборів даних визначають результат до
виконання проекту і порівнюють його з результатом
виконання проекту.
У разі їх розбіжностей потрібно знайти
команди у проекті, виконання яких є
причиною появи цих розбіжностей.
8
Тестування програми
Процес пошуку логічних помилок у проекті з
використанням тестових наборів вхідних даних
називають тестуванням проекту.
Розділ 6
§ 6.2
8
Тестування програми
Пояснимо цей спосіб на такому прикладі. Нехай
потрібно скласти проект для обчислення значень
функції 𝒚 =
𝟐𝒙−𝟓
𝒙 𝟐+𝟏
. Процедура для обчислення значень цієї
функції, у якій значення змінної х вводиметься в поле,
матиме такий вигляд:
Розділ 6
§ 6.2
procedure TForm1.Button1Click(Sender: TObject);
var x, у: real;
begin
x := StrToFloat(Edit1.Text);
у := (2*x-5)/(x*x+1);
Label1.Caption := FloatToStr(y);
end;
8
Тестування програми
Часто учні, записуючи команду присвоювання для
обчислення значення відповідного виразу
у := (2*x-5)/(x*x+1),
забувають узяти знаменник (а то й чисельник) у дужки,
тобто вводять, наприклад, команду або.
Розділ 6
§ 6.2
Таку логічну помилку нескладно помітити,
застосувавши вдалу добірку тестів.
у := (2*х - 5)/х*х + 1
у := 2*х - 5/х*х + 1
або
8
Тестування програми
Так, під час тестування для х = 0 стане очевидним, що
проект не видає очікуваного правильного результату -5,
а не очікувано перериває своє виконання, відкриваючи
вікно з повідомленням про помилку.
Розділ 6
§ 6.2
Вікно з повідомленням
про помилку
Текст процедури із зафарбованим
рядком, що містить помилку
8
Тестування програми
Щоб перервати виконання проекту в такому випадку,
потрібно:
Розділ 6
§ 6.2
Натиснути сполучення
клавіш Ctrl + F2
Вибрати кнопку
Завершити
8
Тестування програми
Далі потрібно зрозуміти, у чому полягає помилка,
виправити її і знову запустити проект на виконання. У
розглянутому випадку це відбувається тому, що в ході
виконання проекту із цим значенням х має виконатися
операція ділення на 0, яку виконати неможливо.
Розділ 6
§ 6.2
Х / 0
8
Тестування програми
Якщо як тестовий приклад буде взято інше значення
х, наприклад -1, то виконання проекту не
переривається, вікно з повідомленням про помилку не
відкривається, але як результат буде виведено число -6,
хоча очікуваним правильним результатом є число -3,5.
У такому випадку також потрібно уважно переглянути
текст процедури, виявити помилку і виправити її.
Розділ 6
§ 6.2
8
Для тих, хто хоче знати більше
Досить часто для полегшення пошуку логічних
помилок у проект додають коментарі.
Розділ 6
§ 6.2
Коментар - це текст, який ігнорується
компілятором і включається до тексту проекту з
метою полегшити його розуміння та пошук
логічних помилок.
8
Для тих, хто хоче знати більшеРозділ 6
§ 6.2
Мовою програмування Lazarus — коментарі
розпочинаються символами:
// {} або (* *)
якщо коментар не займає
більш ніж рядок
коментар, який може
займати декілька рядків.
S := Edit3.Text; { введення дати
народження }
S := Edit3.Text; // введення дати народження
8
Покрокове виконання проекту
Ще одним способом виявлення в проекті логічних
помилок є його покрокове виконання, або трасування.
Крок виконання проекту - це виконання команд,
записаних в одному рядку проекту. У рядку може бути
записано одну команду або кілька.
Розділ 6
§ 6.2
8
Покрокове виконання проекту
Щоб перейти до покрокового виконання процедури, потрібно
встановити точку зупинки процедури і запустити проект на
виконання. Якщо в деякому рядку проекту встановлено точку
зупинки, то після запуску проекту на виконання в автоматичному
режимі виконається частина проекту від самого початку і до
цього рядка, не виконуючи команди саме цього рядка.
Розділ 6
§ 6.2
Для встановлення точки
зупинки в потрібному рядку
слід вибрати номер цього
рядка в тексті проекту. Після
цього фон вибраного рядка
буде зафарбовано червоним
кольором.
8
Покрокове виконання проекту
Для виконання одного кроку проекту потрібно
виконати Виконати  Переступити.
Розділ 6
§ 6.2
Або натиснути клавішу F8.
Під час покрокового
виконання фон рядка проекту,
команди якого будуть
виконані під час наступного
кроку виконання, фарбується
в сірий колір.
8
Покрокове виконання проектуРозділ 6
§ 6.2
У будь-який момент покрокове виконання проекту
можна перервати:
Натиснути сполучення
клавіш Ctrl + F2
Вибрати кнопку
Завершити або Виконати
Виконання проекту
продовжується в
автоматичному режимі.
8
Перегляд значень змінних
під час трасування
Покрокове виконання проекту не має жодного сенсу,
якщо в ході такого виконання не бачити і не
спостерігати, як змінюються значення змінних. Саме
таке спостереження може допомогти нам зрозуміти, які
команди є причиною логічної помилки.
Розділ 6
§ 6.2
Щоб під час покрокового виконання проекту
спостерігати за зміненням значень змінних, потрібно
імена цих змінних помістити до вікна Список
Спостережень. Це можна зробити, використавши вікно
Властивості Спостерігання.
8
Перегляд значень змінних
під час трасування
Щоб помістити ім'я змінної до вікна Властивості
Спостерігання, потрібно натиснути сполучення клавіпі
Ctrl + F5 або виконати Виконати  Додати
спостереження. Ім'я змінної потрібно ввести в поле
Вираз цього вікна і вибрати кнопку Гаразд.
Розділ 6
§ 6.2
8
Перегляд значень змінних
під час трасування
Вікно Список спостережень
Розділ 6
§ 6.2
Відкриває вікно
Властивості Спостерігання
Вилучає із цього вікна виділений
рядок з іменем змінної та її
значенням
Повністю видаляє список
змінних, за якими ведеться
спостереження.
8
Перегляд значень змінних
під час трасування
Під час покрокового виконання проекту значення цих
змінних змінюватимуться, що й можна спостерігати у
вікні Список Спостережень.
Розділ 6
§ 6.2
Уважно стежачи за цими
змінами і порівнюючи ці
значення з очікуваними,
можна помітити, у момент
виконання якої команди
проекту значення певної
змінної стає неправильним.
Саме ця команда й може бути
причиною логічної помилки.
8
Дайте відповіді на запитання для
самоперевірки
1. У чому полягає процес тестування проекту?
2. Поясніть, для чого виконується тестування проекту.
3. Що таке коментар у проекті? Як можна коментар
включити до тексту проекту?
4. Поясніть, для чого в текст проекту включають
коментарі.
5. Для чого проект виконують покроково?
6. Поясніть, у чому полягає процес покрокового
виконання проекту.
Розділ 6
§ 6.2
8
Дайте відповіді на запитання для
самоперевірки
7. Що таке крок виконання проекту? Як здійснити його
виконання?
8. Що таке точка зупинки? Для чого вона
використовується?
9. Як перервати режим покрокового виконання
проекту?
10.Як переглянути значення змінних під час
покрокового виконання програми?
Розділ 6
§ 6.2
8
Домашнє завдання
Проаналізувати
§ 6.2, ст. 188-195
Розділ 6
§ 6.2

More Related Content

What's hot

What's hot (15)

8 клас урок 39
8 клас урок 398 клас урок 39
8 клас урок 39
 
Урок 27 5 клас
Урок 27 5 класУрок 27 5 клас
Урок 27 5 клас
 
події
подіїподії
події
 
04 Windows forms
04 Windows forms04 Windows forms
04 Windows forms
 
5 клас урок 21 НОВА ПРОГРАМА
5 клас урок 21 НОВА ПРОГРАМА5 клас урок 21 НОВА ПРОГРАМА
5 клас урок 21 НОВА ПРОГРАМА
 
Інформатика 8 клас
Інформатика 8 клас Інформатика 8 клас
Інформатика 8 клас
 
Урок 23. Події. Обробники подій
Урок 23. Події. Обробники подійУрок 23. Події. Обробники подій
Урок 23. Події. Обробники подій
 
Інформатика 8 клас
Інформатика 8 клас Інформатика 8 клас
Інформатика 8 клас
 
середовище Lazarus
середовище Lazarusсередовище Lazarus
середовище Lazarus
 
Windows forms
Windows formsWindows forms
Windows forms
 
5 клас урок 18 НОВА ПРОГРАМА
5 клас урок 18 НОВА ПРОГРАМА5 клас урок 18 НОВА ПРОГРАМА
5 клас урок 18 НОВА ПРОГРАМА
 
5 клас урок 20 НОВА ПРОГРАМА
5 клас урок 20 НОВА ПРОГРАМА5 клас урок 20 НОВА ПРОГРАМА
5 клас урок 20 НОВА ПРОГРАМА
 
урок№3 паскаль
урок№3 паскальурок№3 паскаль
урок№3 паскаль
 
Урок 39. Алгоритми з розгалуженнями
Урок 39. Алгоритми з розгалуженнямиУрок 39. Алгоритми з розгалуженнями
Урок 39. Алгоритми з розгалуженнями
 
5 клас урок 28 нова програма
5 клас урок 28 нова програма5 клас урок 28 нова програма
5 клас урок 28 нова програма
 

Similar to 8 клас. Хутько В. Урок 29-30 (20)

Урок 33. Налагодження проекту
Урок 33. Налагодження проектуУрок 33. Налагодження проекту
Урок 33. Налагодження проекту
 
8 клас
8 клас 8 клас
8 клас
 
6 клас урок 6
6 клас урок 66 клас урок 6
6 клас урок 6
 
6 klas
6 klas 6 klas
6 klas
 
Урок 55 8 клас
Урок 55 8 класУрок 55 8 клас
Урок 55 8 клас
 
конспект уроку налагодження програм
конспект уроку налагодження програмконспект уроку налагодження програм
конспект уроку налагодження програм
 
Інформатика-6. Урок 7
Інформатика-6. Урок 7Інформатика-6. Урок 7
Інформатика-6. Урок 7
 
Урок 31-32. 8 клас
Урок 31-32. 8 класУрок 31-32. 8 клас
Урок 31-32. 8 клас
 
лаб роботи Zenon Batch Control
лаб роботи Zenon Batch Controlлаб роботи Zenon Batch Control
лаб роботи Zenon Batch Control
 
1 4
1 41 4
1 4
 
Rozdil1 1 5
Rozdil1 1 5Rozdil1 1 5
Rozdil1 1 5
 
Visual basic
Visual basicVisual basic
Visual basic
 
Inf tema 1_urok_4_6_klas
Inf tema 1_urok_4_6_klasInf tema 1_urok_4_6_klas
Inf tema 1_urok_4_6_klas
 
6 клас (урок№6)
6 клас (урок№6)6 клас (урок№6)
6 клас (урок№6)
 
Урок 28 6 клас
Урок 28 6 класУрок 28 6 клас
Урок 28 6 клас
 
8 клас урок 40
8 клас урок 408 клас урок 40
8 клас урок 40
 
22
2222
22
 
7 proekt
7 proekt7 proekt
7 proekt
 
Урок 25 8 клас. Індивідульно.
Урок 25 8 клас. Індивідульно.Урок 25 8 клас. Індивідульно.
Урок 25 8 клас. Індивідульно.
 
7klas urok14(pr 4)
7klas urok14(pr 4)7klas urok14(pr 4)
7klas urok14(pr 4)
 

More from Andrey Podgayko

Урок. Типи слайдів.
Урок. Типи слайдів.Урок. Типи слайдів.
Урок. Типи слайдів.Andrey Podgayko
 
Урок. Використання діаграм
Урок. Використання діаграмУрок. Використання діаграм
Урок. Використання діаграмAndrey Podgayko
 
Розклад уроків
Розклад уроківРозклад уроків
Розклад уроківAndrey Podgayko
 
Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять Andrey Podgayko
 
Команда супроводу
Команда супроводуКоманда супроводу
Команда супроводуAndrey Podgayko
 
Графік відвідування
Графік відвідуванняГрафік відвідування
Графік відвідуванняAndrey Podgayko
 
Графік проведення відкритих уроків
Графік проведення відкритих уроківГрафік проведення відкритих уроків
Графік проведення відкритих уроківAndrey Podgayko
 
План підвищення кваліфікації
План підвищення кваліфікаціїПлан підвищення кваліфікації
План підвищення кваліфікаціїAndrey Podgayko
 
Порядок підвищення кваліфікації
Порядок підвищення кваліфікаціїПорядок підвищення кваліфікації
Порядок підвищення кваліфікаціїAndrey Podgayko
 

More from Andrey Podgayko (20)

Rozkl 5 11
Rozkl 5 11Rozkl 5 11
Rozkl 5 11
 
Rozkl 1 4
Rozkl 1 4Rozkl 1 4
Rozkl 1 4
 
Dzvon
DzvonDzvon
Dzvon
 
Doc1
Doc1Doc1
Doc1
 
Konkurs
KonkursKonkurs
Konkurs
 
Урок. Типи слайдів.
Урок. Типи слайдів.Урок. Типи слайдів.
Урок. Типи слайдів.
 
Урок. Використання діаграм
Урок. Використання діаграмУрок. Використання діаграм
Урок. Використання діаграм
 
Dzv
DzvDzv
Dzv
 
2019 2020
2019 20202019 2020
2019 2020
 
2018 2019
2018 20192018 2019
2018 2019
 
Розклад уроків
Розклад уроківРозклад уроків
Розклад уроків
 
Чернобай
ЧернобайЧернобай
Чернобай
 
Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять
 
Команда супроводу
Команда супроводуКоманда супроводу
Команда супроводу
 
Список
СписокСписок
Список
 
Положення
Положення Положення
Положення
 
Графік відвідування
Графік відвідуванняГрафік відвідування
Графік відвідування
 
Графік проведення відкритих уроків
Графік проведення відкритих уроківГрафік проведення відкритих уроків
Графік проведення відкритих уроків
 
План підвищення кваліфікації
План підвищення кваліфікаціїПлан підвищення кваліфікації
План підвищення кваліфікації
 
Порядок підвищення кваліфікації
Порядок підвищення кваліфікаціїПорядок підвищення кваліфікації
Порядок підвищення кваліфікації
 

8 клас. Хутько В. Урок 29-30

  • 2. 8 Тестування програмиРозділ 6 § 6.2 Ви вже знаєте, що під час створення проекту можуть виникати синтаксичні помилки. Синтаксичні помилки, які не помітив автор проекту, знаходить компілятор на етапі компіляції під час запуску проекту на виконання. Компіляція – це процес перетворення тексту програми на виконувану програму. Після компіляції повідомлення про помилки з’являється у вікні повідомлення. Потрібно виправити всі такі помилки і знову запустити на виконання нову версію проекту. Розрізняють три групи помилок: Синтаксичні Помилки під час виконання Логічні
  • 3. 8 Тестування програмиРозділ 6 § 6.2 В свою чергу синтаксичні помилки це помилки написані або розміщення ключових слів. Логічні помилки це ті помилки, які припущені під час розробки алгоритму. Помилки виконання це спроби опрацювати не Синтаксичні Помилки під час виконання Логічні
  • 4. 8 Тестування програми Якщо виконання проекту неочікувано переривається або результат його виконання неправильний, то говорять, що проект містить логічні помилки. Розділ 6 § 6.2 Одним зі способів виявлення логічної помилки є створення тестових наборів вхідних даних. Для кожного із цих наборів даних визначають результат до виконання проекту і порівнюють його з результатом виконання проекту. У разі їх розбіжностей потрібно знайти команди у проекті, виконання яких є причиною появи цих розбіжностей.
  • 5. 8 Тестування програми Процес пошуку логічних помилок у проекті з використанням тестових наборів вхідних даних називають тестуванням проекту. Розділ 6 § 6.2
  • 6. 8 Тестування програми Пояснимо цей спосіб на такому прикладі. Нехай потрібно скласти проект для обчислення значень функції 𝒚 = 𝟐𝒙−𝟓 𝒙 𝟐+𝟏 . Процедура для обчислення значень цієї функції, у якій значення змінної х вводиметься в поле, матиме такий вигляд: Розділ 6 § 6.2 procedure TForm1.Button1Click(Sender: TObject); var x, у: real; begin x := StrToFloat(Edit1.Text); у := (2*x-5)/(x*x+1); Label1.Caption := FloatToStr(y); end;
  • 7. 8 Тестування програми Часто учні, записуючи команду присвоювання для обчислення значення відповідного виразу у := (2*x-5)/(x*x+1), забувають узяти знаменник (а то й чисельник) у дужки, тобто вводять, наприклад, команду або. Розділ 6 § 6.2 Таку логічну помилку нескладно помітити, застосувавши вдалу добірку тестів. у := (2*х - 5)/х*х + 1 у := 2*х - 5/х*х + 1 або
  • 8. 8 Тестування програми Так, під час тестування для х = 0 стане очевидним, що проект не видає очікуваного правильного результату -5, а не очікувано перериває своє виконання, відкриваючи вікно з повідомленням про помилку. Розділ 6 § 6.2 Вікно з повідомленням про помилку Текст процедури із зафарбованим рядком, що містить помилку
  • 9. 8 Тестування програми Щоб перервати виконання проекту в такому випадку, потрібно: Розділ 6 § 6.2 Натиснути сполучення клавіш Ctrl + F2 Вибрати кнопку Завершити
  • 10. 8 Тестування програми Далі потрібно зрозуміти, у чому полягає помилка, виправити її і знову запустити проект на виконання. У розглянутому випадку це відбувається тому, що в ході виконання проекту із цим значенням х має виконатися операція ділення на 0, яку виконати неможливо. Розділ 6 § 6.2 Х / 0
  • 11. 8 Тестування програми Якщо як тестовий приклад буде взято інше значення х, наприклад -1, то виконання проекту не переривається, вікно з повідомленням про помилку не відкривається, але як результат буде виведено число -6, хоча очікуваним правильним результатом є число -3,5. У такому випадку також потрібно уважно переглянути текст процедури, виявити помилку і виправити її. Розділ 6 § 6.2
  • 12. 8 Для тих, хто хоче знати більше Досить часто для полегшення пошуку логічних помилок у проект додають коментарі. Розділ 6 § 6.2 Коментар - це текст, який ігнорується компілятором і включається до тексту проекту з метою полегшити його розуміння та пошук логічних помилок.
  • 13. 8 Для тих, хто хоче знати більшеРозділ 6 § 6.2 Мовою програмування Lazarus — коментарі розпочинаються символами: // {} або (* *) якщо коментар не займає більш ніж рядок коментар, який може займати декілька рядків. S := Edit3.Text; { введення дати народження } S := Edit3.Text; // введення дати народження
  • 14. 8 Покрокове виконання проекту Ще одним способом виявлення в проекті логічних помилок є його покрокове виконання, або трасування. Крок виконання проекту - це виконання команд, записаних в одному рядку проекту. У рядку може бути записано одну команду або кілька. Розділ 6 § 6.2
  • 15. 8 Покрокове виконання проекту Щоб перейти до покрокового виконання процедури, потрібно встановити точку зупинки процедури і запустити проект на виконання. Якщо в деякому рядку проекту встановлено точку зупинки, то після запуску проекту на виконання в автоматичному режимі виконається частина проекту від самого початку і до цього рядка, не виконуючи команди саме цього рядка. Розділ 6 § 6.2 Для встановлення точки зупинки в потрібному рядку слід вибрати номер цього рядка в тексті проекту. Після цього фон вибраного рядка буде зафарбовано червоним кольором.
  • 16. 8 Покрокове виконання проекту Для виконання одного кроку проекту потрібно виконати Виконати  Переступити. Розділ 6 § 6.2 Або натиснути клавішу F8. Під час покрокового виконання фон рядка проекту, команди якого будуть виконані під час наступного кроку виконання, фарбується в сірий колір.
  • 17. 8 Покрокове виконання проектуРозділ 6 § 6.2 У будь-який момент покрокове виконання проекту можна перервати: Натиснути сполучення клавіш Ctrl + F2 Вибрати кнопку Завершити або Виконати Виконання проекту продовжується в автоматичному режимі.
  • 18. 8 Перегляд значень змінних під час трасування Покрокове виконання проекту не має жодного сенсу, якщо в ході такого виконання не бачити і не спостерігати, як змінюються значення змінних. Саме таке спостереження може допомогти нам зрозуміти, які команди є причиною логічної помилки. Розділ 6 § 6.2 Щоб під час покрокового виконання проекту спостерігати за зміненням значень змінних, потрібно імена цих змінних помістити до вікна Список Спостережень. Це можна зробити, використавши вікно Властивості Спостерігання.
  • 19. 8 Перегляд значень змінних під час трасування Щоб помістити ім'я змінної до вікна Властивості Спостерігання, потрібно натиснути сполучення клавіпі Ctrl + F5 або виконати Виконати  Додати спостереження. Ім'я змінної потрібно ввести в поле Вираз цього вікна і вибрати кнопку Гаразд. Розділ 6 § 6.2
  • 20. 8 Перегляд значень змінних під час трасування Вікно Список спостережень Розділ 6 § 6.2 Відкриває вікно Властивості Спостерігання Вилучає із цього вікна виділений рядок з іменем змінної та її значенням Повністю видаляє список змінних, за якими ведеться спостереження.
  • 21. 8 Перегляд значень змінних під час трасування Під час покрокового виконання проекту значення цих змінних змінюватимуться, що й можна спостерігати у вікні Список Спостережень. Розділ 6 § 6.2 Уважно стежачи за цими змінами і порівнюючи ці значення з очікуваними, можна помітити, у момент виконання якої команди проекту значення певної змінної стає неправильним. Саме ця команда й може бути причиною логічної помилки.
  • 22. 8 Дайте відповіді на запитання для самоперевірки 1. У чому полягає процес тестування проекту? 2. Поясніть, для чого виконується тестування проекту. 3. Що таке коментар у проекті? Як можна коментар включити до тексту проекту? 4. Поясніть, для чого в текст проекту включають коментарі. 5. Для чого проект виконують покроково? 6. Поясніть, у чому полягає процес покрокового виконання проекту. Розділ 6 § 6.2
  • 23. 8 Дайте відповіді на запитання для самоперевірки 7. Що таке крок виконання проекту? Як здійснити його виконання? 8. Що таке точка зупинки? Для чого вона використовується? 9. Як перервати режим покрокового виконання проекту? 10.Як переглянути значення змінних під час покрокового виконання програми? Розділ 6 § 6.2