top of page

 הגדרת משתנים - המשך

למדנו על משתנה מסוג INT ומשתנה מסוג LONG. נראה כעט מספר תכונות ופעולות מתמטיות הקשורות לסוג משתנה זה.

פעולות שחורגות מעבר לגבול ערך מותר - ישנם מצבים בהם הגדרנו משתנה מסוג INT ואנו מבצעים פעולות חשבוניות עם הערכים וחורגים מעבר לגבולות הערכים המותרים למשתנה מסוג INT. במקרים של חריגה מעבר לגבול מתרחש "קסם" בבקר. תחום המספרים המותרים הם כמו על מעגל ולא על ציר מספרים אופקי, כך שקצה התחום העליון נוגע בקצה התחום התחתון. אם עוברים את הגבול העליון כאילו ממשיכים לטייל על המעגל הדימיוני ומגיעים לתחום התחתון ובעצם עוברים למספרים שליליים. אותה התנהגות מתרחשת גם בכיוון ההפוך, כשחוצים את הגבול התחתון. תופעה זו יכולה להיות כתוצאה מחיבור מספרים, חיסור, כפל או חילוק או כל פעולה מתמטית אחרת.

פעולות שתוצאתן לא מתאימה לסוג המשתנה - הסברנו בתחילה כי כאשר מגדירים משתנה המחשב שומר בזכרון מקום המספיק לאחסן מידע מהסוג הדרוש (סוגים שונים של משתנים דורשים כמו שונה של זכרון). ישנם מצבים, כמו פעולת חילוק של שני מספרים מסוג INT, אשר תוצאת הפעולה החשבונית נותנת מספר שאינו מאותו סוג, קרי INT. למשל: חלוקה של 4 ב-3 נותנת מספר שהוא לא שלם (1.3333). מכיוון מששמרנו בזיכרון מקום למספר מסוג INT, אנחנו לא יכולים לאחסן מספר עשרוני רגיל. במקרה כזה המחשב/הבקר יתעלם מהחלק הלא שלם של תוצאת החישוב, וישמור רק את החלק משמאל לנקודה העשרונית. בדוגמא שהוזכרה המחשב ישמור רק 1 ואילו ה-0.333 ילך לאיבוד.

שימו לב: אין כאן פעולה של עיגול המספר (0.6 מעוגל ל 1, ו- 0.37 מעוגל ל-0), יש התעלמות מחלק השבר במספר, והתחשבות רק בחלק השלם.

בתוכנית הבאה ניתן לראות כי חלוקה של 15 ב-4 מדפיסה למסך את הערך 3.

חישוב שארית החלוקה (%) ישנם מקרים בהם ברצוננו לדעת מה שארית החלוקה של שני מספרים מסוג INT. למשל בחלוקה של 15 ב-4 נקבל שארית 3 (לא 3/4). כדי לבצע פעולה כזו בתוכנית אנו כותבים תרגיל חילוק רגיל אך במקום להשתמש בסימן החילוק (/) נשתמש בסימן האחוז (%). כשהמחשב יריץ את התוכנית הוא יבין שאנחנו מעוניינים לקבל את שארית החלוקה, ולא את תוצאת החלוקה הרגילה. נשנה את התוכנית הקודמת לחשב את שארית החלוקה של 13 ב-4.

bottom of page