החברה "סוד ההצלחה" החליטה שכל הישיבות והכנסים שלה יתקיימו באופן וירטואלי לחלוטין דרך מערכת מפגשים וירטואליים Boom שפיתחו מתכנתים שלה. במפגשי Boom ניתן לחלק משתתפים בין "חדרים" וירטואליים. לשם ניהול המפגשים הוירטואליים פותחו מחלקות Meeting, VRoom, Participant.
החברה "סוד ההצלחה" החליטה שכל הישיבות והכנסים שלה יתקיימו באופן וירטואלי לחלוטין דרך מערכת מפגשים וירטואליים Boom שפיתחו מתכנתים שלה. במפגשי Boom ניתן לחלק משתתפים בין "חדרים" וירטואליים. לשם ניהול המפגשים הוירטואליים פותחו מחלקות Meeting, VRoom, Participant.
fieldDocHebrew:
- כל משתתף (Participant) מאופיין על ידי שם (name) ומספר היחידה שבה הוא עובד (dep, מספר שלם בין 1 ל-10).
- כל חדר (VRoom) מאופיין על ידי מספר חדר (num, מספר שלם וחיובי) ותור משתתפים (parts).
- למחלקה Meeting תכונה אחת – רשימת חדרים וירטואליים מסוג VRoom (rooms - שרשרת חוליות מסוג Node<VRoom>).
language_variants: givenCode:
public class User {
private string name;
private int dep;
public User(string n, int d){
this.name = n;
this.dep = d;
}
} //אפשר להניח שהוגדרו Set/Get
public class Meeting {
private Node<VRoom> rooms;
public Meeting() {
this.rooms = null;
}
}
public class Vroom {
private int num;
Queue<Participant> parts;
public VRoom(int n){
...
}
}
typoNote: class header printed as
public class Vroom(lowercase r) but constructor ispublic VRoom(int n)and every other reference isVRoom— internal paper typo, preserved verbatim; solution silently usesVRoomconsistently throughout.
כתבו במחלקה VRoom פעולה בונה מקבלת מספר חדר ובונה חדר ריק ממשתתפים.
public void Add(Participant p)
כתבו במחלקה VRoom פעולה add המקבלת משתתף ומוסיפה אותו לחדר.
public void Divide (int number)
לפני כל ישיבה, הנהלת החברה מחליטה על מספר המשתתפים שיהיו בחדר וירטואלי בחדר. כתבו במחלקה Meeting פעולה המקבלת מספר שלם וחיובי number. הפעולה תקלוט את פרטי המשתתפים (שם ומספר יחידה) ואילו יצטרפו לחדר אחד (מספר number). הפעולה תיצור חדר שמספרו יהיה ראשון, לאחריו לחדר שני יצטרפו ואילו יצטרפו לחדר מספר number, וכן הלאה. הקלט יסתיים כאשר יקלט 0 כמספר היחידה.
public void PrintMissingUnits()
כאשר מטרת הישיבה היא סיעור מוחות (brainstorming), חשוב שבכל חדר יהיו עשרה נציגים מכל אחת מיחידות החברה. כתבו במחלקה Meeting פעולה אשר מדפיסה עבור כל חדר את מספרי יחידות החברה שנציגיהן לא נמצאים בחדר.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.