אתם מתרגלים שאלה מתוך מה"ט אלגוריתמיקה ותכנות בפייתון — הנדסאי תוכנהמבחן 2024 · קיץ מועד ב · שאלה 7כל שאלות המבחן ←
תכנות בסיסימערכים חד-ממדיים

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

  • שם המשחק – name, מטיפוס מחרוזת, string
  • גיל מינימלי – minAge, מטיפוס מספר שלם, int
  • מספר שחקנים – numPlayers, מטיפוס מספר שלם, int
  • מחיר – price, מטיפוס מספר ממשי, float
סעיף א

לקוח יכול להחליף את המשחק שקנה למשחק אחר בתנאי שהגיל מינימלי של שני משחקים זהה והמחיר של משחק האחר לא גבוה מהמחיר שקנה הלקוח. כתבו פעולה המקבלת הפניה למשחק בשם other (הפניה לעצם מטיפוס Game). הפעולה תבדוק אם אפשר להחליף משחק self למשחק other. אם כן – הפעולה תחזיר ערך True, ולא – הפעולה תחזיר ערך False. כותרת הפעולה:

def can_replace(self, other)
סעיף ב

כתבו פעולה המקבלת רשימת משחקים arr ומשחק my_game שהלקוח מעוניין להחליף. הפעולה תמנה ותחזיר את מספר המשחקים אשר מתאימים להחלפה. כותרת הפעולה:

def replace(arr, my_game)
סעיף ג

סבא וסבתא של התאומים אורי ודורון רוצים לקנות להם מתנות ליום ההולדת החמישי שלהם. ליאור, האחות הגדולה של התאומים, ביקשה שבכל משחק יוכלו לשחק לפחות שלושה שחקנים. כתבו פעולה המקבלת רשימת משחקים ומדפיסה את כל הצירופים האפשריים של שני משחקים שונים שעולים יחד פחות מ-200 ₪. כותרת הפעולה:

def gift_for_twins(arr)
סעיף ד

מהי סיבוכיות הפעולות שכתבתם בסעיפים ב' ו-ג'. הסבירו את תשובתכם.

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

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

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

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