בעיות רקורסיה

בעיות רקורסיה

היי אני תלמידת י"ב ויש לי בעיה בבעיות רקורסיה... מישהו יכול לעזור או שזה לא המקום?
 

1ca1

New member
למה לא?

כל עוד הבעיה היא לא תיכנותית פרופר (או שיש בה חלק אלגוריתמי גדול) אין בעיה... יש גם את פורום שפות תכנות אם את מחפשת אימפלמנטציה מסויימת...
 
הו תודה =]

אמממ... כדי להבין יותר את הרעיון הרקורסיבי, 2 שאלות: תרגיל 1: כתוב פרוצדורה המדפיסה N איברים של סדרה חשבונית, כאשר A הוא האיבר הראשון שבה ו- D הוא הפרש הסדרה. תרגיל 2: כתוב שגרה אשר מקבלת כפרמטר מספר טבעי ומדפיסה שורת מספרים , עבור פרמטר N=4 תודפס השורה: 4 3 2 1 0 1 2 3 4 זה כמעט ג'יבריש בשבילי >< וזה צריך ליהיות הכל ברקורסיה! תודה מראש! =]
 

1ca1

New member
בבקשה

אני מניח שאת מבינה את העקרון של הרקורסיה, בנייה על סמך הפעלה של אותה פרצדורה תוך כדי פיקוח על הכניסה ללולאות הפנימיות ע"י תנאי עצירה, אז נתחיל באחרון, שזה למעשה הדפסת פלינדרום, נבצע כך פרצדורה הדפסת-פלינדרום(N) אם N=0 הדפס 0 וסיים (זה למעשה בדיקת התנאי) אחרת הדפס N הדפסת-פלינדרום(N-1) {זוהי הקריאה הרקורסיבית) הדפסת N סיים העניין הוא פשוט, בהתחלה N>0, הוא מדפיס את המספר, קורא להדפסה הפנימית ומחכה, ההדפסה הפנימית, תדפיס את המספרים בסדר הנכון (זוהי למעשה מעין אינדוקציה שאנחנו נסמכים עליה), ובסוף אחרי שסיימו להדפיס את הדברים הפנימיים, נדפיס עוד פעם את N ונסיים, נשים לב שבמקרה הקצה של N=0, אנחנו מדפיסים רק 0 ומסיימים, בשביל לקטוע את עץ הרקורסיה ולא להיכנס לעומקים גדולים יותר. לגבי השאלה הראשונה, רעיון דומה פרצדורה הדפסת-סדרה-חשבונית(A,D,N) אם N=1 אזי הדפס A, החזר A. אחרת (כלומר N>1), אזי הדפס הדפסת-סדרה-חשבונית(A,D,N-1) והחזר הדפסת-סדרה-חשבונית(A,D,N-1) פלוס D. הרעיון הוא פשוט אם הגענו לאיבר הראשון נחזיר אותו, אחרת, נחזיר את האיבר הקודם (שעוד פעם, באינדוקציה מסויימת הוא יוחזר נכון) פלוס D, שזה בעצם האיבר הנוכחי של הסדרה החשבונית... מקווה שהבנת...
 
למעלה