תרגול מדעי המחשב

סכום ראשי התורים

מאתגר C#

המשימה

ממשו את הפעולה getTopsSum. הפעולה מקבלת **שרשרת חוליות שבכל חוליה שלה
יושב תור** של מספרים עשרוניים, ומחזירה את סכום האיברים שבראשי התורים.

כלומר: מכל תור לוקחים רק את האיבר הראשון, ומסכמים.

דוגמה:
  חוליה 1: תור [1.5, 9.0]     →  לוקחים 1.5
  חוליה 2: תור []             →  ריק, מדלגים
  חוליה 3: תור [2.5, 0.5]     →  לוקחים 2.5
  התוצאה: 4.0

הנחיות:
• **חובה שאחת החוליות תכיל תור ריק** — זה המקרה שמפיל פתרונות.
  head על תור ריק זורק שגיאת ריצה.
• התורים חייבים להישאר במצבם המקורי. יש פעולה שמאפשרת לראות את
  הראש בלי להוציא אותו — מצאו אותה.

ממשק מבני הנתונים כבר מצורף למשימה.

```ds:list
{"title":"השרשרת — בכל חוליה תור","items":["[1.5, 9.0]","[ ריק ]","[2.5, 0.5]"]}
```

```ds:table
{"title":"מה נלקח מכל חוליה","rows":[["חוליה","התור","ראש התור","נכנס לסכום"],["1","1.5 · 9.0","1.5","1.5"],["2","ריק","אין","0"],["3","2.5 · 0.5","2.5","2.5"],["סה\"כ","","","4.0"]]}
```

קוד הפתיחה

using System;

class Program {

    static double GetTopsSum(Node<Queue<double>> lst) {
        // כתוב את הפתרון כאן
        return 0;
    }

    // ── עזר, לא חלק מהמשימה ──────────────────────────────────────────
    static Queue<double> Q(params double[] values) {
        Queue<double> q = new Queue<double>();
        foreach (double v in values) q.Insert(v);
        return q;
    }

    static void Main() {
        Node<Queue<double>> lst =
            new Node<Queue<double>>(Q(1.5, 9.0),
            new Node<Queue<double>>(Q(),                 // תור ריק — המקרה החשוב
            new Node<Queue<double>>(Q(2.5, 0.5), null)));

        Console.WriteLine(GetTopsSum(lst));    // 4
        Console.WriteLine(lst.GetInfo());      // [1.5,9]  — התור לא נפגע
        Console.WriteLine(GetTopsSum(null));   // 0
    }
}

כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.

התרגיל הבא העתקת תור והדפסתו
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון — כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות בדיקה חיצוני.