GIGO (ראשי התיבות של: Garbage In, Garbage Out, בתרגום חופשי: "קלט זבל, פלט זבל") מונח מעולם מדעי המחשב המתייחס למצב בו קלט שגוי שהוזן לתוכנית מחשב או לפונקציה מבלי לוודא את נכונותו יוביל לפלט שגוי.

המונח משמש בהשאלה גם לתיאור של קבלת החלטות שגויות על בסיס מידע שגוי או חסר.

בתחום התוכנה, על מנת להימנע מהתופעה מקובל לבצע בדיקות תקינות והגבלות על נתוני הקלט בכניסה לפונקציה.

אטימולוגיה

עריכה

המונח מבוסס על משקל של מונחים מוכרים.

מתחום מדעי המחשב:

מתחום הבקרה:

דוגמאות

עריכה
  • סוג המשתנה - פונקציית חיבור שמקבלת כקלט שני איברים וסוכמת אותם. לדוגמה עבור קלט 1 ו-2 תחזיר 3. אם תקבל כקלט ספרה ותו - היא תספק פתרון מספרי בהתאם להמרת ASCII על אף שאין לזה משמעות מתמטית. למשל עבור 1+a תחזיר 98.
  • סימן - פונקציית העברת כסף מחשבון בנק של לקוח לחשבון בנק של פלוני - מקבלת כקלט את סכום העברה ואישור הלקוח על העברה. בהתאם מחסירה את הסכום מחשבון הלקוח ומוסיפה לפלוני. במידה והייתה מקבלת כקלט סכום בסימן שלילי, דוגמת (100-), הייתה הפונקציה מחסירה סכום שלילי מחשבונו כלומר מוסיפה לו כסף ומוסיפה סכום שלילי לפלוני כלומר מחסירה לחשבון פלוני כסף וללא רשותו.

הערות שוליים

עריכה