החנות "Gift4U" מוכרת מתנות דרך אינטרנט. לשם כך הוגדרה המחלקה Gift המייצגת מתנה. למחלקה שלוש תכונות: code - קוד מתנה, מטיפוס מספר שלם int; price - מחיר מתנה, מטיפוס ממשי double; type - למי מיועדת המתנה, מטיפוס תו char. התכונה יכולה לקבל אחת מארבע אפשרויות: 'M' - לגברים, 'F' - לנשים, 'U' - גם לגברים וגם לנשים, 'K' - לילדים. במחלקה הוגדרו פעולה בונה ופעולות get לכל תכונה.
החנות "Gift4U" מוכרת מתנות דרך אינטרנט. לשם כך הוגדרה המחלקה Gift המייצגת מתנה. למחלקה שלוש תכונות: code - קוד מתנה, מטיפוס מספר שלם int; price - מחיר מתנה, מטיפוס ממשי double; type - למי מיועדת המתנה, מטיפוס תו char. התכונה יכולה לקבל אחת מארבע אפשרויות: 'M' - לגברים, 'F' - לנשים, 'U' - גם לגברים וגם לנשים, 'K' - לילדים. במחלקה הוגדרו פעולה בונה ופעולות get לכל תכונה.
כתבו פעולה void setType(char type). הפעולה מעדכנת את התכונה type בהתאם לפרמטר. אם הפרמטר שהפעולה מקבלת אינו תקין, העדכון לא מתבצע.
public void SetType(char type)
כתבו פעולה isForMan() בוליאנית. הפעולה מחזירה true אם המתנה מתאימה לגברים, אחרת הפעולה תחזיר false.
public bool IsForMan()
כתבו פעולה חיצונית המקבלת מערך מתנות (עצמים מטיפוס Gift) arr, וסכום כסף sum. הפעולה תבדוק אם יש שלוש מתנות שונות המתאימות לגברים שהסכום שלהן שווה ל-sum. אם כן — הפעולה תדפיס את הקודים של שלוש המתנות, אם לא — הפעולה תדפיס הודעה מתאימה. הערה: אם קיימות כמה אפשרויות לבחירת שלוש מתנות, יש להדפיס את כולן.
public static void ThreeGifts(Gift[] arr, double sum)
מהי סיבוכיות זמן הריצה של הפעולה שכתבתם בסעיף ג'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.