בעיית שנת 1900

בעיית שנת 1900אנגלית: Year 1900 problem) נוגעת לפרשנות שגויה של שנים שנרשמות בשתי הספרות האחרונות בלבד, והאם הן התרחשו לפני שנת 1900 או אחריה. בניגוד לבאג 2000, היא אינה קשורה לתוכנות מחשב בלבד, מכיוון שהבעיה הייתה קיימת לפני שהמחשבים האלקטרוניים התקיימו, וגם צצה במערכות ידניות.

הנושא הנפוץ ביותר שהועלה על ידי שנת 1900 נוגע לגיליהם של אנשים. לעיתים קרובות, שנת הלידה של האדם נרשמה בשתי ספרות בלבד, מתוך הנחה שלא חשוב בדיוק בן כמה אדם, או שאיש אינו חי יותר ממאה שנים. במספר מדינות, במיוחד באירופה, הוצג מספר זיהוי לאומי (לעיתים קרובות בשנות ה-50), כולל מידע דו ספרתי על שנת הלידה.

תופעת הלוואי הלא רצויה הגדולה ביותר מכך היא שלפעמים חושבים שאנשים בני 100 ומעלה הם ילדים צעירים או במקרים מסוימים, שחושבים שילדים צעירים הם מבוגרים.[1]

בעת הטיפול בבאג 2000 ננקטו לפעמים אמצעים להימנע או לתקן זאת: שינוי מספר הזיהוי הלאומי, למשל. לדוגמה, השנה נרשמת רק עם שתי ספרות במספר אזרחי ייחודי בולגרי; עם זאת, פתרון לבעיה זאת היה מוכן כבר עם הקמת המערכת בשנת 1975: נוסף 20 למספר החודש עבור אדם שנולד לפני 1900 ו-40 עבור ילידי שנת 2000 או אחריו.

מיקרוסופט אקסלעריכה

 
29 בפברואר 1900 בגרסה הפולנית של מיקרוסופט אקסל עבור Microsoft Windows

מיקרוסופט אקסל (המשתמש במערכת התאריכים המוגדרת כברירת מחדל של 1900) אינו יכול להציג תאריכים לפני שנת 1900, אם כי הדבר אינו נובע מכך שמספר שלם דו ספרתי משמש לייצוג השנה: אקסל משתמש במספר נקודה צפה כדי לאחסן תאריכים ושעות. המספר 1.0 מייצג את 1 בינואר 1900 במערכת התאריכים 1900 או את 1 בינואר 1904 במערכת התאריכים 1904 והיה ברירת המחדל עבור מקינטוש לפני אקסל 2016. מספרים קטנים יותר מכך מוצגים כשגיאת #VALUE!.[2][3]

לצורך תאימות עם לוטוס 1-2-3, מערכת התאריכים של 1900 מקבלת באופן שגוי את התאריך 29 בפברואר 1900, אולם 1900 לא הייתה שנה מעוברת.[4]

באג 4000עריכה

בעוד שרוב התוכנות, כולל אקסל ו-R, מזהות את 4000 ו-8000 כשנות מעוברות (מכיוון שהן ניתנות לחלוקה ב-400), SAS אינה (אין בתוכנה "כלל 4000 שנה"). כך שהמרות תאריכים בין SAS לתוכנות אחרות יוצאות מהסנכרון לאחר 28 בפברואר 4000, מבלי להתחשב בפער זה.[5][6]

ראו גםעריכה

הערות שולייםעריכה

  1. ^ "5-Year-Old Boy Summoned For Jury Duty". WBAL-TV. 8 במרץ 2006. אורכב מ-המקור ב-30 בספטמבר 2011. נבדק ב-31 במרץ 2017. {{cite web}}: (עזרה)
  2. ^ "Differences between the 1900 and the 1904 date system". docs.microsoft.com. נבדק ב-24 בנובמבר 2019. {{cite web}}: (עזרה)
  3. ^ How to Work With Dates Before 1900 in Excel
  4. ^ "Excel incorrectly assumes that the year 1900 is a leap year". Microsoft Docs. 21 במאי 2020. נבדק ב-30 ביולי 2020. {{cite web}}: (עזרה)
  5. ^ In the year 9999...., Chris Hemedinger
  6. ^ The Conversion of Date and Time Values between SAS Data Sets and Microsoft Access Database, SAS 9.4 documentation
  ערך זה הוא קצרמר בנושא היסטוריה. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.