Разница между фатальными и логическими ошибками в программировании заключается в их характере и последствиях:
- Фатальные ошибки — это ошибки, после которых выполнение программы невозможно и бессмысленно. tdoc.ru Они неожиданны и подразумеваются маловероятными. tdoc.ru Например, любое срабатывание проверки Assert означает серьёзное нарушение логики работы программы. tdoc.ru
- Логические ошибки — это ошибки в логике работы программы, которые происходят из-за неправильно написанного кода. {6-host} Программа может быть написана совершенно правильно с точки зрения синтаксиса языка, и при этом она будет неправильно работать. info-master.su Эти ошибки сложнее обнаружить, так как компилятор или интерпретатор не указывает на них. {10-host}
Таким образом, фатальные ошибки приводят к сбою приложения и его преждевременному завершению, в то время как логические ошибки позволяют приложению продолжить выполнение, но приводят к получению неверных результатов. stackoverflow.com