מערכת מחשוב של בנק "SimpleBank" כוללת שתי מחלקות הבאות: Account ו-Branch.

למחלקה Account (חשבון) ארבע תכונות:

  • מספר חשבון – num, מטיפוס מספר שלם – int
  • תעודת הזהות של הלקוח – id, מטיפוס מחרוזת – String
  • יתרה בחשבון – balance, מטיפוס מספר ממשי – double
  • מצב חשבון – isActive, מטיפוס boolean (true – חשבון פעיל, ו-false – חשבון לא פעיל) בעת פתיחת חשבון לקוח מקבל מתנה ₪100 ליתרת חשבון.

למחלקה Branch (סניף) תכונות הבאות:

  • מספר סניף – branchNum, מטיפוס שלם – int
  • מערך חשבונות – accounts – מערך הפניות לעצמים מסוג Account
  • מספר חשבונות בפועל – current, מטיפוס מספר שלם – int

בעת פתיחת סניף חדש יש ליצור מערך בגודל maxAccount (מספר החשבונות המקסימלי בסניף המתקבל כפרמטר) ללא חשבונות בפועל.

(א)כתבו במחלקות Account ו-Branch פעולות בונות (constructors):
```java
public Account(int num, String id)
public Branch(int branchNum, int maxAccount)
```
בסעיפים הבאים אפשר להניח שקיימות פעולות get/set לכל התכונות בשתי המחלקות.
במחלקה Branch קיימת פעולה פנימית ליצירת מספר חשבון, המבטיחה שמספר חשבון יהיה ייחודי בסניף. אפשר להשתמש בפעולה זו ולא צריך לממש אותה.
כותרת הפעולה:
```java
public int generateNum()
```
(ב)כדי למשוך לקוחות חדשים החליטה הנהלת הבנק על מבצע הבא: כל לקוח חדש (זה שאין לו חשבון בסניף) מקבל מתנה של ₪500 בעת פתיחת חשבון (אם ללקוח יש כבר חשבון הוא מקבל מתנה "רגילה" של ₪100).
כתבו במחלקה Branch פעולה להוספת חשבון חדש:
```java
public void addAccount(String id)
```
אפשר להניח שבמערך יש מקום לחשבון חדש.
(ג)כאשר לקוח רוצה לעבור מסניף br1 לסניף br2 כל החשבונות שלו בסניף br1 נסגרים (הופכים להיות "לא פעילים") ובסניף br2 נפתח חשבון חדש עם יתרה השווה לסכום היתרות שהיו לו בסניף הקודם. אין צורך במחיקה חשבונות שנסגרו.
כתבו פעולה חיצונית המבצעת מעבר לקוח מסניף לסניף. כותרת הפעולה:
```java
public static void moveClient(String id, Branch br1, Branch br2)
```
שימו לב: לקוח העובר מסניף לסניף הוא לא לקוח חדש ולא מגיעה לו מתנה (גם לא מתנה רגילה).

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

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

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

רוצים לתרגל אלפי שאלות נוספות?

המשיכו לתרגול מלא עם משוב אישי ←

מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות

המשיכו לתרגול מלא ←