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

המחלקה Baby (תינוק) משמשת למעקב התפתחותי של התינוקות המגיעים למרפאה במהלך השנה הראשונה לחייהם.

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

private string name;              // שם
private double[] height; // מדידת גובה חודשית
private double[] weight; // מדידת משקל חודשית

הערה: אורך המערכים height ו-weight הוא 12. בתא מספר אפס שומרים מדידות שנעשו בחודש הראשון אחרי לידה, בתא מספר אחד – מדידות שנעשו בחודש השני אחרי לידה וכך הלאה.

לדוגמה: שני מערכים מתארים התפתחות הילד ב-12 החודשים הראשונים:

משקל בקילוגרמים (weight):

01234567891011
3.36605.7356.9959.390011.2200013.495014.705

גובה במטרים (height):

01234567891011
0.54500.5700.6000.66000.735000.77700.792

המדידה הראשונה הייתה בחודש 1, המדידה האחרונה הייתה בחודש 12. שימו לב: בחודשים 2, 6, 8, 9, 11 לא היו מדידות.

סעיף א

כתבו פעולה המקבלת מספר חודש month, גובה h ומשקל w ומעדכנת את מערכי המדידות בהתאם. כותרת הפעולה:

public void SetData(int month, double h, double w)
סעיף ב

כתבו פעולה המחזירה את ממוצע המשקל על פי כל המדידות שהתקיימו. כותרת הפעולה:

public double AvgWeight()
סעיף ג

המדד מסת גוף (BMI - BodyMassIndex) משקלל את משקל עם הגובה. המדד הזה חשוב להערכה אם התפתחות הילד תקינה. חישוב ה-BMI מתבצע לפי הנוסחה הבאה: משקל חלקי גובה בריבוע:

BMI = w / h²

כתבו פעולה המחזירה מדד ה-BMI של התינוק על פי המדידה האחרונה שלו. כותרת הפעולה:

public double GetLastBmi()
שאלות ותגובות על השאלה

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

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

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