אתם מתרגלים שאלה מתוך מה"ט אלגוריתמיקה ותכנות — הנדסאי תוכנהמבחן 2023 · קיץ מועד א · שאלה 4כל שאלות המבחן ←
תכנות מונחה עצמיםמחלקות ואובייקטים

המחלקה Time מייצגת נקודת זמן לפי מספר שעות ומספר דקות. תכונות המחלקה: hour (מספר שלם, 0-23), min (מספר שלם, 0-59). במחלקה הוגדרה פעולה בונה המקבלת פרמטר לכל תכונה.

public class Time
{
    private int hour; // 0-23
    private int min; // 0-59

    public Time(int hour, int min)
    {
        this.hour = hour;
        this.min = min;
    }
}
סעיף א

כתבו במחלקה Time פעולה difference המקבלת הפניה לאובייקט other מטיפוס Time, ומחזירה את מספר הדקות שעברו בין הזמן המיוצג על-ידי האובייקט שמפעיל את הפעולה (this) לזמן המיוצג באמצעות other. אפשר להניח ש-this לפני other.

public int difference(Time other)

סעיף ב

חברת משלוחים מבטיחה ללקוחותיה שכל משלוח יגיע ליעד לא מאוחר משלוש שעות (180 דקות) מהרגע שהתקבל בחברה. כתבו קטע תוכנית לבדיקה. הקטע צריך לקלוט עבור כל אחד מ-100 משלוחים את זמני קבלתו בחברה ומסירתו לידי הלקוח. עבור כל משלוח ייקלטו ארבעה מספרים שלמים (שעת קבלה, דקת קבלה, שעת מסירה, דקת מסירה). לדוגמה: עבור משלוח שהתקבל בחברה ב-10:50 ונמסר ללקוח ב-12:20 יש לקלוט ארבעה מספרים: 10, 50, 12, 20. קטע התוכנית יבדוק אם חברת המשלוחים קיימה את ההבטחה ויידפיס הודעה מתאימה. עליכם להיעזר בפעולה שכתבתם בסעיף א'.

שאלות ותגובות על השאלה

🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות

שאלו כאן — ותקבלו מענה מוסמך.

🎓 מרצה לתכנות עונה כאן — תקבלו מענה מקצועי