אתם מתרגלים שאלה מתוך בגרות מדעי המחשב — יסודות (שאלון 899371)מבחן 2019 · קיץ מועד א · שאלה 3כל שאלות המבחן ←
תכנות מונחה עצמיםמחלקות ואובייקטים

במערכת מחשוב של חברה למכירת מכוניות משומשות הוגדרה מחלקה בשם Car שיש לה שלוש תכונות: licenseNum — מספר רישוי מטיפוס מחרוזת; hadAccident — משתנה בוליאני שערכו true אם המכונית עברה תאונה, אחרת מקבל false; price — מחיר המכונית, מספר מטיפוס שלם. לכל תכונה במחלקה הוגדרו כרגיל ב-Java פעולות get ו-set ובC# פעולות Get ו-Set, וכן פעולה בונה המקבלת ערך לכל אחת מן התכונות.

סעיף א

כתוב במחלקה Car פעולה פנימית בוליאנית בשם range ב-Java או Range ב-C#, המקבלת שני מספרים שלמים min ו-max (הנח ש-max גדול מ-min). הפעולה תחזיר true אם מחיר המכונית הוא בין min ל-max (כולל), אחרת תחזיר false. הפעולה תחזיר false גם אם המכונית עברה תאונה.

public bool Range(int min, int max)

סעיף ב-1

נתונה המחלקה AllCars שיש לה שתי תכונות: cars — מערך חד-ממדי מטיפוס Car, בגודל קבוע; num — מספר המכוניות הנוכחי שיש בחברה, מטיפוס שלם. לפניך פעולת הבנייה של המחלקה:

public AllCars (int max)
{
    this.cars = new Car [max];
    this.num = 0;
}

כתוב במחלקה AllCars פעולה פנימית בוליאנית בשם addCar ב-Java או AddCar ב-C#, המקבלת עצם מטיפוס Car. הפעולה מוסיפה אותו למערך cars במקום הראשון הפנוי ומחזירה true. אם המערך מלא תחזיר הפעולה false. הנח שאין מקומות פנויים במערך מתחילתו ועד למספר num (לא כולל num).

public bool AddCar(Car car)

סעיף ב-2

כתוב במחלקה AllCars פעולה פנימית בשם print ב-Java או Print ב-C#, המקבלת שני מספרים שלמים min ו-max (הנח ש-max גדול מ-min). הפעולה תדפיס את מספר הרישוי (licenseNum) של כל מכונית במערך cars שלא עברה תאונה ושמחירה נמצא בין min ל-max (כולל). חובה להשתמש בפעולה שהוגדרה בסעיף א.

public void Print(int min, int max)

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

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

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

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