פורסם 2005 ביוני 2520 שנים שלום לכולם זקוק לעזרה בתרגיל הבא בנושא רקורסיה בתרגיל בשפת C: סעיף א':ממשו פונקציה רקורסיבית int rec_strlen(char *) שמקבלת מחרוזת ומחשבת את אורכה. אין להשתמש בלולאות ובפונקציות מספריית string.h.סעיף ב':עליכם לממש פונקציה rec_match(char *string, char* substring) int שתבדוק האם substring היא תת מחרוזת של string .אם כן הפונקציה תחזיר 1 אחרת 0. הפונקציה תהיה רקורסיבית ולא תשתמש כלל בלולאות ופונקציות מספריית string.h. הפונקציה תשתמש ב- rec_strlen מסעיף א'. נסביר את פעולתה ע"י דוגמא:int main(){ rec_match (aabcdf,abc); // will return 1 since abc is a substring of aabcdf rec_match (aabcdf,abf); // will return 0 since abf is not a substring of aabcdf return 0;} מחרוזת תחשב כתת מחרוזת של מחרוזת אחרת אם היא מופיעה במלואה וברצף בתוך המחרוזת האחרת לפחות פעם אחת. ניתן להניח שגם string וגם substring אינן ריקות ואינן NULL (כלומר מכילות לפחות תו אחד). הדרך הפשוטה לפתור את התרגיל היא על ידי שתי פונקציות רקורסיביותתודה מראש על התגובות...
פורסם 2005 ביוני 2520 שנים בתרגיל הראשון אתה יכול לבדוק אם הגעת ל\0 אם לא אז אתה שולח לאותה פונ את ה str+1 ומוסיף 1. אם זה \0 אז אתה מחזיר 0.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.