Программалауда кездесетін қателер

Программалауда қателердің үш үлкен тобы бар: 1) синтаксистік — программа МҮЛДЕМ ІСКЕ ҚОСЫЛМАЙДЫ; 2) орындалу уақыты (ерекшелік) — код синтаксисі дұрыс, бірақ орындалу барысында пайда болады; 3) алгоритмдік (логикалық) — код ІСКЕ ҚОСЫЛАДЫ, НӘТИЖЕ ДЕ БЕРЕДІ, бірақ нәтиже ҚАТЕ.

Анықтама
Синтаксистік қате (SyntaxError) — тілдің грамматикалық ережесі бұзылғанда пайда болады. Интерпретация кезінде БІРДЕН анықталады, программа тіпті ІСКЕ ҚОСЫЛМАЙДЫ.
Анықтама
Орындалу уақыты қатесі (runtime error / ерекшелік) — код синтаксисі дұрыс, программа ІСКЕ ҚОСЫЛАДЫ, бірақ орындалу барысында КҮТПЕГЕН жағдай пайда болғанда тоқтайды.
ЕрекшелікМағынасыМысал
NameErrorАтау анықталмағанprint(a+b), b жоқ
ValueErrorМән қатесіint('Hi')
TypeErrorТип сәйкессіздігі8 + '3'
ZeroDivisionErrorНөлге бөлу1/0
Анықтама
Алгоритмдік (логикалық) қате — программа ҚАТЕСІЗ орындалып, НӘТИЖЕ де береді, бірақ нәтиже ДҰРЫС ЕМЕС, себебі алгоритмнің логикасы қате құрылған. Мұндай қате интерпретация кезінде КӨРІНБЕЙДІ — оны табу үшін тестілеу қажет.
Есеп: N=int(input()); if (N//10)+(N%10)%2==0: print('jup') — else бөлігі жоқ.
Қате: «тақ» жағдайда ЕШТЕҢЕ ШЫҚПАЙДЫ. Түзету: else: print('taq') қосу керек.

Қателерді табу әдістері: синтаксистік — «^» белгісіне қара; орындалу қатесі — Traceback хабарламасын оқы (қай жол, қандай ерекшелік); алгоритмдік — трассировка және тестілеу (шеткі мәндер, теріс сандар, нөл).