Топ питань
Часова шкала
Чат
Перспективи

Логічна помилка (програмування)

помилка в програмі, яка спричиняє її неправильну роботу, але не призводить до аварійного завершення З Вікіпедії, вільної енциклопедії

Remove ads

У комп'ютерному програмуванні логічна помилка — це помилка в програмі, яка спричиняє її неправильну роботу, але не призводить до аварійного завершення (або збою).[1] Логічна помилка призводить до неочікуваних або небажаних результатів або іншої поведінки, хоча це не відразу можна помітити.

Логічні помилки виникають як у компільованих, так і в інтерпретованих мовах. На відміну від програми з синтаксичною помилкою, програма з логічною помилкою є правильною програмою з погляду мови, хоча й поводиться не так, як передбачалося. Часто єдиною підказкою про існування логічних помилок є створення неправильних розв'язків, хоча статичний аналіз іноді також дає змогу їх помітити.

Remove ads

Усунення логічних помилок

Один зі способів виявити помилку такого типу — вивести змінні програми у файл або на екран, що дає змогу визначити місце помилки в коді. Хоча це працює не у всіх випадках, наприклад, під час виклику підпрограми з помилкою, це найпростіший спосіб знайти проблему, якщо програма використовує неправильні результати хибного математичного розрахунку.

Приклади

Цей приклад функції мовою C для обчислення середнього арифметичного двох чисел містить логічну помилку: у виразі відсутні круглі дужки. Програма компілюється та виконується, але повертає неправильну відповідь через пріоритет оператора (ділення виконується перед додаванням):

float average(float a, float b)
{
  return a + b / 2; // має бути (a + b) / 2
}

Див. також

Примітки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads