שגיאה לוגית היא באג שבו התוכנית רצה עד הסוף בלי שום הודעת שגיאה, אבל עושה משהו אחר ממה שהתכוונו.
המחשב לא יכול לגלות שגיאה לוגית בעצמו, כי מבחינתו הכול תקין: ההוראות כתובות נכון, והוא מבצע אותן בדיוק. הבעיה היא בחשיבה — בהוראות עצמן. למשל, כתבנו מינוס במקום פלוס, שכחנו לאפס מונה, או בדקנו ״גדול מ־״ במקום ״גדול או שווה״.
כדי למצוא שגיאות לוגיות בודקים את התוכנית עם קלטים שאנחנו יודעים מראש מה התשובה שלהם: אם ממוצע של 80 ו־90 יוצא 170, משהו לא בסדר. מעקב, הדפסות של ערכי ביניים ובדיקת מקרי קצה הם הכלים העיקריים.
💡 איך זוכרים? שגיאה לוגית = המחשב צייתן, אבל ההוראה שגויה.