מערכת מידע העוקבת אחר התפתחות תינוקות בקופות חולים כוללת שתי מחלקות: Date ו-Baby.
המחלקה Date מייצגת תאריך ולה שלוש תכונות: day – יום, month – חודש, year – שנה. למחלקה הוגדרו פעולה בונה, פעולות set/get לכל התכונות. וכן הוגדרו שתי פעולות: equals ו-tomorrow.
- הפעולה
bool equals(Date other)המקבלת כפרמטר תאריך מסוים other, ובודקת אם הוא זהה לתאריך המיוצג על ידי האובייקט שמפעיל את הפעולה (this). - הפעולה
Date tomorrow()המחזירה את התאריך שלמוחרת התאריך this. המחלקה Baby מייצגת תינוק ולה שש תכונות: - שם פרטי – firstName, מטיפוס מחרוזת, string
- שם משפחה – lastName, מטיפוס מחרוזת, string
- מספר זהות – id, מטיפוס מחרוזת, string
- תאריך לידה – birth, מטיפוס Date
- משקל – weight, מטיפוס מספר ממשי, double
- גובה – height, מטיפוס שלם, int למחלקה הוגדרו פעולה בונה, ופעולות Set/Get לכל התכונות.
(א)כתבו במחלקה Baby את הפעולה CompareTo המקבלת כפרמטר תינוק other ומחזירה מספר שלם המציין הבדל ברמות התפתחות של שני תינוקות:
- אם המשקל של התינוק הנוכחי (שמיוצג באמצעות האובייקט שמפעיל את הפעולה, this) שווה למשקל של התינוק other, וגם הגובה של this שווה לגובה של other, הפעולה תחזיר 0.
- אם גם המשקל של this גדול מהמשקל של other וגם הגובה של this גדול מהגובה של other, הפעולה תחזיר 1.
- אם רק המשקל של this גדול מהמשקל של other, הפעולה תחזיר 2.
- אם רק הגובה של this גדול מהגובה של other, הפעולה תחזיר 3.
- אחרת, הפעולה תחזיר 4.
- אם המשקל של התינוק הנוכחי (שמיוצג באמצעות האובייקט שמפעיל את הפעולה, this) שווה למשקל של התינוק other, וגם הגובה של this שווה לגובה של other, הפעולה תחזיר 0.
- אם גם המשקל של this גדול מהמשקל של other וגם הגובה של this גדול מהגובה של other, הפעולה תחזיר 1.
- אם רק המשקל של this גדול מהמשקל של other, הפעולה תחזיר 2.
- אם רק הגובה של this גדול מהגובה של other, הפעולה תחזיר 3.
- אחרת, הפעולה תחזיר 4.
(ב)כתבו במחלקה Baby את הפעולה הבוליאנית AreTwins המקבלת כפרמטר תינוק נוסף other ובודקת אם הוא תאום של התינוק המיוצג באובייקט שמפעיל את הפעולה (this).
אם כן – הפעולה תחזיר ערך true, ואם לא – הפעולה תחזיר ערך false.
התינוקות הם תאומים אם:
- שם המשפחה שלהם זהה.
- השם הפרטי שלהם שונה.
- מספרי הזהות של התינוקות שונים זה מזה.
- תאריך הלידה שלהם זהה או שונה ביום אחד בדיוק (כלומר, נולדו באותו יום או בימים עוקבים).
אם כן – הפעולה תחזיר ערך true, ואם לא – הפעולה תחזיר ערך false.
התינוקות הם תאומים אם:
- שם המשפחה שלהם זהה.
- השם הפרטי שלהם שונה.
- מספרי הזהות של התינוקות שונים זה מזה.
- תאריך הלידה שלהם זהה או שונה ביום אחד בדיוק (כלומר, נולדו באותו יום או בימים עוקבים).
(ג)כתבו פעולה המקבלת מערך תינוקות babies (מערך של עצמים מסוג Baby) תינוק baby נוסף.
הפעולה תדפיס את מספרי תעודות הזהות של התינוקות עם אותה רמת ההתפתחות.
כותרת הפעולה:
`public static void Print(Baby[] babies, Baby baby)`
חובה להשתמש בפעולה שכתבתם בסעיף א'
הפעולה תדפיס את מספרי תעודות הזהות של התינוקות עם אותה רמת ההתפתחות.
כותרת הפעולה:
`public static void Print(Baby[] babies, Baby baby)`
חובה להשתמש בפעולה שכתבתם בסעיף א'
(ד)כתבו פעולה המקבלת מערך תינוקות babies ומחזירה את מספר זוגות התאומים שיש במערך.
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות
שאלו כאן — ותקבלו מענה מוסמך.
רוצים לתרגל אלפי שאלות נוספות?
המשיכו לתרגול מלא עם משוב אישי ←מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות