עבור לתוכן

מעקב אחרי רקורסיה

Featured Replies

פורסם

שלום :xyxthumbs: יש לי את התוכנית הבאה ברקורסיה, התוכנית מקבלת מספר ומדפיסה את הסיפרה המקסימלית של המספר.

*הוספתי קובץ טקסט עם התוכנית

לא הבנתי איך אני עוקב אחרי התוכנית... :screwy:

נניח עם המספר 123. אז הבנתי עד הקטע שאני נכנס לפונצקיה עם הסיפרה 1 ואז נתקעתי :-X

מישהו יכול להסביר לי איך התוכנית ממשיכה אחר כך? תודה!

[attachment deleted by admin]

פורסם

א. להבא יש לך כפתור עריכה בפוסטים שאתה כותב, כדי להוסיף / לשנות דברים...

ב. לעניין, אתה פשוט צריך לחשוב בהגיון מה הפונקציה עושה. מהסתכלות על הרקורסיה, ניתן לראות כי הרקורסיה מפרקת את המספר לספרות שלו (פעולות ה % ו /) כאשר היא מתחילה מהספרה הימנית ביותר עד השמאלית (שהרי ביצוע NUM % 10 מחזיר את הספרה הכי נמוכה שלו).

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

כאשר תנאי העצירה פה הוא שהגעת לספרה השמאלית ביותר.

זוהי גם רקורסיית זנב (כשאתה הולך לסוף ואז לעשות את הבדיקות).

פורסם
  • מחבר

תודה :yelclap:

עכשיו הבנתי

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים