שרשרת חוליות שבה הראש הוא תמיד 'היום' — הוספה היא תמיד בראש (א'), ובדיקות ההיסטוריה (ב', ג') הן מעברים על הרשימה מהראש קדימה, כשג' בונה ישירות על ב'.
שרשרת חוליות שבה הראש הוא תמיד 'היום' — הוספה היא תמיד בראש (א'), ובדיקות ההיסטוריה (ב', ג') הן מעברים על הרשימה מהראש קדימה, כשג' בונה ישירות על ב'.
class ForeignCurrency
{
private String name;
private Node<Double> rates;
// במחלקה הוגדרו פעולה בונה ופעולות set/get
}
סעיף א
כתבו פעולה פנימית addRate(double rate) המוסיפה שער מטבע ביום הנוכחי.
private void addRate(double rate)
סעיף ב
מטבע נחשב "בשיא" שלו אם השער הנוכחי שלו גבוה מכל השערים הקודמים שלו. כתבו פעולה פנימית המחזירה true אם המטבע נמצא בשיא שלו.
private boolean isAtPeak()
סעיף ג
מטבע נחשב "כדאי להשקעה" אם השער שלו עלה לפחות בחמשת הימים האחרונים אך אינו נמצא בשיא. כתבו פעולה פנימית המחזירה true אם המטבע הוא "כדאי להשקעה", ואם לא, הפעולה תחזיר false. אפשר להניח שברשימת השערים יש מידע על לפחות חמשת הימים האחרונים.
private boolean isWorthInvesting()
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.