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

מערכת ממוחשבת של משטרת התנועה: SpeedCamera (מצלמת מהירות בודדת: קוד מצלמה, מספר כביש, מהירות מקסימלית מותרת, אוסף מספרי רכבים שנסעו מהר מהמותר). SpeedCameraNetwork (עד 100 מצלמות ליום, ייתכן פחות).

סעיף א

כתבו את כותרת המחלקה SpeedCamera ואת התכונות שלה. לייצוג אוסף אפשר להשתמש במחלקות Stack, Queue, Node. אפשר להוסיף תכונות נוספות. חובה לתעד את התכונות.

סעיף ב

כתבו את הבנאי של המחלקה, המקבל את קוד המצלמה, את מספר הכביש ואת המהירות המותרת. הבנאי מאתחל אוסף מספרי כלי הרכב להיות ריק.

public SpeedCamera(int cameraCode, int roadNumber, int maxSpeed)

סעיף ג

כתבו פעולה addCar המקבלת את מספר המכונית שצולמה ואת המהירות שלה. אם המהירות גבוהה מהמותר בכביש זה, הפעולה תוסיף מכונית זו לאוסף של המכוניות שנסעו מהר מהמותר. (הניחו שבמחלקה SpeedCamera קיימות פעולות get ואין צורך לממש אותן.)

public void AddCar(int carNumber, int speed)

סעיף ד

בכל יום מציבה המשטרה 100 מצלמות לכל היותר (ייתכן אף פחות). רשת המצלמות המוצבות בכבישים ביום נתון מיוצגת באמצעות המחלקה SpeedCameraNetwork. כתבו את כותרת המחלקה SpeedCameraNetwork ואת התכונות שלה.

סעיף ה

כתבו את הפעולה addSpeedCamera המוסיפה את מצלמת המהירות sc לרשת המצלמות. אפשר להניח שהמצלמה sc אינה מופיעה ברשת המצלמות.

public void AddSpeedCamera(SpeedCamera sc)

סעיף ו

כביש הדורש אכיפה מוגברת הוא כביש שבוצעו בו מעל 200 עבירות מהירות ליום. כתבו פעולה המדפיסה את מספרי הכבישים שבהם יש לבצע אכיפה מוגברת. ציינו באיזו מחלקה יש לכתוב את הפעולה.

public void PrintRoadsNeedingEnforcement()

סעיף ז

במשטרה רוצים לבדוק אם רכב מסוים צולם כאשר נסע במהירות גבוהה מהמותר. כתבו פעולה המקבלת מספר רכב. הפעולה תבדוק אם הרכב צולם כאשר נסע במהירות גבוהה מהמותר. אם כן — הפעולה תדפיס את מספר המצלמה אשר צילמה את העבירה ותחזיר true, ואם לא — הפעולה תחזיר false. הערה: אם רכב עשה כמה עבירות יש להדפיס את המספרים של כל המצלמות שצילמו את העבירות.

public bool WasCaught(int carNumber)

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

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

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

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