אתם מתרגלים שאלה מתוך מה"ט מבני נתונים ותכנות מונחה עצמים — הנדסאי תוכנהמבחן 2022 · אביב מועד ב · שאלה 10כל שאלות המבחן ←
מבנים לינארייםתורים

פרויקט משרד הפנים: City (עיר, שם + אוסף שכונות) ו-Quarter (שכונה, שם + מספר תושבים + אוסף רחובות). האוספים חייבים להיות Stack/Queue/שרשרת חוליות בלבד.

סעיף א

כתבו כותרות לשתי המחלקות, הגדירו את התכונות שלהן וכתבו פעולות בונות המקבלות שמות של שכונה או של עיר ומאתחלים אוספים להיות ריקים. שימו לב: כדי לייצג אוסף אפשר להשתמש רק במבני הנתונים הבאים: מחסנית, תור, שרשרת חוליות. אפשר להניח שבמחלקות Quarter ו-City קיימות פעולות set/get לכל תכונות.

סעיף ב

כתבו פעולה פנימית במחלקה City המקבלת שם רחוב street ומדפיסה שמות של כל השכונות שרחוב זה עובר בהן. אפשר להניח שרחוב street קיים בעיר.

public void printQuartersOfStreet(String street)

סעיף ג

משרד הפנים קיבל החלטה לאחד שתי שכונות. כתבו פעולה במחלקה City המקבלת שמות של שתי שכונות ומבצעת את השינויים הנדרשים באוסף שכונות. השם של השכונה החדשה הוא שמה של השכונה שיש לה יותר תושבים. שימו לב: אם בשתי תכונות יש אותו רחוב, אחרי האיחוד הוא צריך להופיע פעם אחת בלבד.

public void mergeQuarters(String name1, String name2)

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

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

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

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