שאלה בפסקל בנושא רקורסיה

שאלה בפסקל בנושא רקורסיה

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

אם יש לך רק ספרה אחת, אני משערת שאתה יודע מה לעשות. אם יש לך יותר (נאמר n ספרות), תניח שהתוכנית יודעת לחשב את הנדרש עבור מספר בן n-1 ספרות (כלומר, אם תקרא לה עבור מספר עם n-1 ספרות היא תחזיר תשובה). מה עוד נותר לך לעשות בשביל שתהיה לך התשובה עבור n ספרות?
 
אני הולך להיכשל.....

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

אוקיי.. תודה על העזרה. אם עוד מישהו יודע איך פותרים את השאלה שיעזור, תודה.
 

The Albatross

New member
אבל גם בפעם הקודמת רצית 200 ש"ח

ריח של קנוניה עולה באפי.
 

DadleFish

New member
זה המחיר הסטנדרטי לשאלת ש"ב

אם יגיע משהו יותר רציני, נדרוש 3000 ש"ח
 

DadleFish

New member
תירגע ../images/Emo6.gif

ביום שמישהו ישלם לי 200 ש"ח על שאלת ש"ב אני מבטיח לקנות קישוטים לפורום.
 
זו לא שאלת ש"ב

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

אולי תנסה לכתוב את הפתרון בעצמך, תעלה אותו לכאן ואנחנו נתקן בהתאם?
 
אוקיי הנה:

program rec9; uses crt; var num:integer; procedure zugi(n:integer); begin If n div 10<>0 then begin zugi(n div 10); if n mod 2=0 then writeln(n mod 10); end else begin If n mod 2=0 then {zugi} writeln(n); end; End; begin clrscr; write('Enter a number: '); readln(num); zugi(num); readln; end.
 

vinney

Well-known member
נכון שלא יהיה איכפת לך להיות נחמד

וליישר את זה כך שנוכל גם לקרוא? יש כפתורים [תחילת קוד] ו[סיום קוד] בתחתית חלון כתיבת ההודעה במיוחד לצרכים כאלה.
 
למעלה