Топ питань
Часова шкала
Чат
Перспективи
Логічна помилка (програмування)
помилка в програмі, яка спричиняє її неправильну роботу, але не призводить до аварійного завершення З Вікіпедії, вільної енциклопедії
Remove ads
У комп'ютерному програмуванні логічна помилка — це помилка в програмі, яка спричиняє її неправильну роботу, але не призводить до аварійного завершення (або збою).[1] Логічна помилка призводить до неочікуваних або небажаних результатів або іншої поведінки, хоча це не відразу можна помітити.
Логічні помилки виникають як у компільованих, так і в інтерпретованих мовах. На відміну від програми з синтаксичною помилкою, програма з логічною помилкою є правильною програмою з погляду мови, хоча й поводиться не так, як передбачалося. Часто єдиною підказкою про існування логічних помилок є створення неправильних розв'язків, хоча статичний аналіз іноді також дає змогу їх помітити.
Remove ads
Усунення логічних помилок
Один зі способів виявити помилку такого типу — вивести змінні програми у файл або на екран, що дає змогу визначити місце помилки в коді. Хоча це працює не у всіх випадках, наприклад, під час виклику підпрограми з помилкою, це найпростіший спосіб знайти проблему, якщо програма використовує неправильні результати хибного математичного розрахунку.
Приклади
Цей приклад функції мовою C для обчислення середнього арифметичного двох чисел містить логічну помилку: у виразі відсутні круглі дужки. Програма компілюється та виконується, але повертає неправильну відповідь через пріоритет оператора (ділення виконується перед додаванням):
float average(float a, float b)
{
return a + b / 2; // має бути (a + b) / 2
}
Див. також
Примітки
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads