המשימה
בנה מחלקה בשם BankAccount שמייצגת חשבון בנק.
המחלקה תכלול:
• תכונות פרטיות: שם בעל החשבון ויתרה.
• בנאי שמקבל שם ויתרה התחלתית.
• פעולה deposit(amount) שמוסיפה ליתרה. סכום שאינו חיובי — מתעלמים ממנו.
• פעולה withdraw(amount) שמחזירה true אם המשיכה בוצעה. משיכה גדולה מהיתרה
או סכום שאינו חיובי — מוחזר false והיתרה לא משתנה.
• פעולה מאחזרת ליתרה.
זו הנקודה של התרגיל: המחלקה אחראית לכך שהיתרה לעולם לא תהיה שלילית.
```ds:table
{"title":"מסלול הבדיקה, שורה אחר שורה","rows":[["פעולה","מה מוחזר","היתרה אחרי"],["יתרה התחלתית 100","—","100"],["deposit(50)","—","150"],["withdraw(200)","false","150"],["withdraw(150)","true","0"],["deposit(-10)","—","0"]]}
```
קוד הפתיחה
class BankAccount {
private String owner;
private int balance;
public BankAccount(String owner, int balance) {
// אתחל את התכונות
}
/** מוסיפה ליתרה. סכום שאינו חיובי — מתעלמים ממנו. */
public void deposit(int amount) {
// כתוב את הפתרון כאן
}
/** מושכת מהיתרה. מחזירה true רק אם המשיכה בוצעה בפועל. */
public boolean withdraw(int amount) {
// כתוב את הפתרון כאן
return false;
}
public int getBalance() {
return 0; // החזר את היתרה
}
}
public class Main {
public static void main(String[] args) {
BankAccount acc = new BankAccount("דנה", 100);
acc.deposit(50);
System.out.println(acc.getBalance()); // 150
System.out.println(acc.withdraw(200)); // false
System.out.println(acc.getBalance()); // 150
System.out.println(acc.withdraw(150)); // true
System.out.println(acc.getBalance()); // 0
acc.deposit(-10);
System.out.println(acc.getBalance()); // 0
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.