החנות "Game4U" מוכרת משחקי שולחן לילדים. לשם ניהול ממוחשב של המכירות הוגדרה המחלקה Game ולה ארבע תכונות:

  • שם המשחק – name, מטיפוס מחרוזת, String
  • גיל מינימלי – minAge, מטיפוס מספר שלם, int
  • מספר שחקנים – numPlayers, מטיפוס מספר שלם, int
  • מחיר – price, מטיפוס מספר ממשי, double

למחלקה הוגדרו פעולה בונה (constructor), פעולות get/set והפעולה toString

(א)לקוח יכול להחליף את המשחק שקנה למשחק אחר בתנאי שהגיל מינימלי של שני משחקים זהה והמחיר של המשחק האחר לא גבוה מהמחיר שקנה הלקוח.
כתבו פעולה המקבלת הפניה למשחק בשם other (הפניה לעצם מטיפוס Game). הפעולה תבדוק אם אפשר להחליף משחק this למשחק other. אם כן – הפעולה תחזיר ערך true, ולא – הפעולה תחזיר ערך false.
כותרת הפעולה:
`public boolean canReplace(Game other)`
(ב)כתבו פעולה המקבלת מערך משחקים arr ומשחק myGame שהלקוח מעוניין להחליף. הפעולה תמנה ותחזיר את מספר המשחקים אשר מתאימים להחלפה.
כותרת הפעולה:
`public static int replace(Game[] arr, Game myGame)`
(ג)סבא וסבתא של התאומים אורי ודורון רוצים לקנות להם מתנות ליום ההולדת החמישי שלהם. ליאור, האחות הגדולה של התאומים, ביקשה שבכל משחק יוכלו לשחק לפחות שלושה שחקנים.
כתבו פעולה המקבלת מערך משחקים ומדפיסה את כל הצירופים האפשריים של שני משחקים שונים שעולים יחד פחות מ-200 ₪.
כותרת הפעולה:
`public static void giftForTwins(Game[] arr)`
(ד)מהי סיבוכיות הפעולות שכתבתם בסעיפים ב' ו-ג'. הסבירו את תשובתכם.

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

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

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

רוצים לתרגל אלפי שאלות נוספות?

המשיכו לתרגול מלא עם משוב אישי ←

מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות

המשיכו לתרגול מלא ←