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

נתונה המחלקה Weight – משקל, שיש לה שתי תכונות:

kilo – מספר קילוגרמים, המקבלת ערכים מ-0 ומעלה, מטיפוס מספר שלם. gram – מספר גרמים, המקבלת ערכים מ-0 עד 999 (כולל), מטיפוס מספר שלם.

הנח שלכל תכונה במחלקה הוגדרו בשפת Java פעולות get ו-set ובשפת C# פעולות Get ו-Set.

לפניך ממשק חלקי של המחלקה Weight הכתוב בשפת Java ובשפת C#:

כותרת הפעולהתיאור הפעולה
public Weight()פעולה בונה המאתחלת את התכונות kilo ו-gram לאפס.
public Weight(int kilo, int gram)פעולה בונה המקבלת ערכים בקילוגרמים וגרמים. הנח שמספר הקילוגרמים במשתנה kilo גדול או שווה ל-0, ומספר הגרמים במשתנה gram הוא בין 0 ל-999 (כולל).
public Weight(int totalGram)פעולה בונה המקבלת ערך בגרמים בלבד. מספר הגרמים במשתנה totalGram יכול להיות מעל 999. הפעולה תחשב ותכניס את מספר הקילוגרמים ל-kilo ואת מספר הגרמים ל-gram. דוגמה: אם מספר הגרמים במשתנה totalGram הוא 3,215 התכונה kilo תקבל 3 והתכונה gram תקבל 215. הנח שמספר הגרמים totalGram גדול או שווה ל-0.
public void add(Weight other) — בשפת Java / public void Add(Weight other) — בשפת C#פעולה המקבלת עצם אחר מטיפוס Weight ומוסיפה את משקלו של העצם הנוכחי. הנח ש-other אינו null.
public boolean less(Weight other) — בשפת Java / public bool Less(Weight other) — בשפת C#פעולה המקבלת עצם אחר מטיפוס Weight ומחזירה true אם משקל העצם הנוכחי קטן ממשקל העצם האחר. הנח ש-other אינו null.

א. ממש את שתי הפעולות הבונות של המחלקה Weight: public Weight(int kilo, int gram) ו- public Weight(int totalGram) (אין צורך לממש את הפעולה הבונה ללא פרמטרים).

ב. ממש את הפעולות add ו-less בשפת Java, או Add ו-Less בשפת C#.

ג. נתונה המחלקה AllWeights שיש לה תכונה אחת: arr – מערך מטיפוס Weight. לפניך ממשק חלקי של המחלקה AllWeights הכתוב בשפת Java ובשפת C#: public Weight sum() — בשפת Java / public Weight Sum() — בשפת C# — פעולה המחזירה עצם Weight השווה לסכום המשקלים של איברי המערך. הערה: אין לשנות את איברי המערך. ממש את הפעולה sum בשפת Java או Sum בשפת C#. הנח שהתאים במערך arr אינם null. הערה: תוכל להשתמש בכל אחת מן הפעולות של מחלקה Weight.

סעיף א

ממש את שתי הפעולות הבונות של המחלקה Weight: public Weight(int kilo, int gram) ו-public Weight(int totalGram) (אין צורך לממש את הפעולה הבונה ללא פרמטרים).

public Weight(int kilo, int gram) / public Weight(int totalGram)

סעיף ב

ממש את הפעולות add ו-less בשפת Java, או Add ו-Less בשפת C#.

public void add(Weight other) / public boolean less(Weight other)

סעיף ג

ממש את הפעולה sum בשפת Java או Sum בשפת C# במחלקה AllWeights, המחזירה עצם Weight השווה לסכום משקלי איברי המערך arr, בלי לשנות את איברי המערך.

public Weight sum()

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

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

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

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