המשימה
בנו שתי מחלקות, כל אחת עם חמשת יסודות המחלקה (שם באות גדולה, תכונות, בנאי, getters ו-setters, ו-toString). **Grade** — ציון: • name — שם המקצוע • value — ערך מספרי שלם בין 0 ל-100 **Student** — תלמיד: • id — מספר תעודת זהות (מחרוזת) • grades — שרשרת חוליות של ציונים הוסיפו ל-Student: • addGrade(g) — מוסיפה ציון לתלמיד. • countGrades() — מחזירה כמה ציונים יש לתלמיד. • hasFailing() — מחזירה true אם קיים אצלו ציון נכשל. ציון נכשל הוא ציון **מתחת ל-55**. ולבסוף, פעולה סטטית printFailing שמקבלת מערך של תלמידים ומדפיסה את תעודות הזהות של אלה שיש להם לפחות ציון נכשל אחד, כל אחת בשורה. הנחיות: • התכונות פרטיות. הגישה אליהן רק דרך פעולות המחלקה. • שימו לב לגבול: 55 עובר, 54 נכשל. המחלקה Node כבר מצורפת למשימה. [טבלה]
קוד הפתיחה
class Grade {
private String name;
private int value;
public Grade(String name, int value) {
// אתחל את התכונות
}
public String getName() { return ""; }
public int getValue() { return 0; }
public void setName(String name) { }
public void setValue(int value) { }
public String toString() { return ""; }
}
class Student {
private String id;
private Node<Grade> grades;
public Student(String id) {
// אתחל את התכונות. שרשרת ריקה היא null.
}
public String getId() { return ""; }
/** מוסיפה ציון לתלמיד. */
public void addGrade(Grade g) {
// כתוב את הפתרון כאן
}
/** כמה ציונים יש לתלמיד. */
public int countGrades() {
// כתוב את הפתרון כאן
return 0;
}
/** האם קיים ציון מתחת ל-55. */
public boolean hasFailing() {
// כתוב את הפתרון כאן
return false;
}
public String toString() { return ""; }
}
public class Main {
/** מדפיסה את תעודות הזהות של התלמידים שיש להם ציון נכשל. */
public static void printFailing(Student[] students) {
// כתוב את הפתרון כאן
}
public static void main(String[] args) {
Student a = new Student("111");
a.addGrade(new Grade("מתמטיקה", 90));
a.addGrade(new Grade("אנגלית", 40));
Student b = new Student("222");
b.addGrade(new Grade("מתמטיקה", 80));
b.addGrade(new Grade("אנגלית", 55));
Student c = new Student("333");
Student d = new Student("444");
d.addGrade(new Grade("היסטוריה", 54));
System.out.println(a.countGrades()); // 2
System.out.println(c.countGrades()); // 0
System.out.println(b.hasFailing()); // false
System.out.println(d.hasFailing()); // true
printFailing(new Student[]{a, b, c, d}); // 111 ואז 444
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.