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

הדפסת מערך מהסוף להתחלה

בינוני Java

המשימה

כתוב **שתי** פעולות רקורסיביות שמקבלות מערך ואינדקס התחלה:

1. פעולה שמדפיסה את המערך מההתחלה לסוף.
2. פעולה שמדפיסה אותו מהסוף להתחלה.

כל איבר בשורה נפרדת. אסור להשתמש בלולאה בכלל.

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

```ds:array
{"title":"הקלט — הפלט ההפוך יהיה 9, 7, 5, 3","items":["3","5","7","9"]}
```

קוד הפתיחה

public class Main {

    public static void printForward(int[] arr, int index) {
        // כתוב את הפתרון כאן — רקורסיבי, בלי לולאה
    }

    public static void printBackward(int[] arr, int index) {
        // אותו מבנה — רק סדר שתי השורות שונה
    }

    public static void main(String[] args) {
        int[] arr = {3, 5, 7, 9};

        printForward(arr, 0);    // 3 5 7 9
        System.out.println("---");
        printBackward(arr, 0);   // 9 7 5 3
        System.out.println("---");
        printBackward(new int[]{}, 0);   // כלום
    }
}

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

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