פורסם 2020 בדצמבר 24 שנים שלום, אני כבר ממש מיואשת אז אשמח לעזרה בשאלה (שפת C). אני צריכה לכתוב פונקציה רקורסיבית (בלי מצביעים) שקולטת מחרוזת למערך (עד 100 תווים) ומדפיסה אותה בסדר ההפוך ורק את האותיות ללא התווים. תודה רבה!
פורסם 2020 בדצמבר 24 שנים שלום רב. ובכן - א. האם הפונקציה הרקורסיבית עצמה צריכה לקלוט את הטקסט או בנפרד ממנה? ב. מה ניסית עד כה? במה את צריכה עזרה?
פורסם 2020 בדצמבר 24 שנים מחבר ציטוט של af db creid שלום רב. ובכן - א. האם הפונקציה הרקורסיבית עצמה צריכה לקלוט את הטקסט או בנפרד ממנה? ב. מה ניסית עד כה? במה את צריכה עזרה? צריך לקלוט טקסט מהmain ואז להפעיל את הפונקציה. בגדול הצלחתי לעשות את זה בלי מערך. הבעיה היא שיש הגבלה ל100 תווים ככה שאני די בטוחה שהדרך היחידה היא במערך. נערך 2020 בדצמבר 24 שנים על-ידי lina12
פורסם 2020 בדצמבר 24 שנים לא הצלחתי להבין את התרגיל. יש לך מערך של char בעל 100 תווים ? ככה: char szInput[100]; לא ? רקרוסיבי הכוונה שהפונקציה יכול לקרוא לעצמה. אז נניח שהפונקציה תקרא לעצמה עד תנאי מסויים, למשל תו יציאה או אנטר או משהו דומה. אם כך המערך צריך להיות גלובלי כדי לשמור על הערכים שלו וצריך כנראה עוד משתנה שיחזיק את האורך. אבל את אומרת משהו אחר שלא מסתדר, הפונקציה מקבלת את התווים ...? קצת יצאתי מבולבל
פורסם 2020 בדצמבר 24 שנים מחבר ציטוט של Jabberwock לא הצלחתי להבין את התרגיל. יש לך מערך של char בעל 100 תווים ? ככה: char szInput[100]; לא ? רקרוסיבי הכוונה שהפונקציה יכול לקרוא לעצמה. אז נניח שהפונקציה תקרא לעצמה עד תנאי מסויים, למשל תו יציאה או אנטר או משהו דומה. אם כך המערך צריך להיות גלובלי כדי לשמור על הערכים שלו וצריך כנראה עוד משתנה שיחזיק את האורך. אבל את אומרת משהו אחר שלא מסתדר, הפונקציה מקבלת את התווים ...? קצת יצאתי מבולבל אני צריכה לקלוט את התווים קודם כל, ואז להפעיל את הפונקציה ולשנות את הסדר שלהם ולקלוט רק את האותיות בלי המספרים והתווים שיכולים להיות במערך. בעיקר לא ברור לי מה עושים בתוך הפונקציה עם המערך. איך מדפיסים ואיך קולטים? נערך 2020 בדצמבר 24 שנים על-ידי lina12
פורסם 2020 בדצמבר 24 שנים ציטוט של lina12 ולקלוט רק את האותיות בלי המספרים והתווים שיכולים להיות במערך תו יכול להיות או מספר או אות או תו מיוחד למשל דולר, כוכבית וכו'. לא הבנתי את המשפט שלך
פורסם 2020 בדצמבר 24 שנים מחבר ציטוט של Jabberwock תו יכול להיות או מספר או אות או תו מיוחד למשל דולר, כוכבית וכו'. לא הבנתי את המשפט שלך נכון, אבל אני צריכה מתוך המערך להדפיס רק את התווים שהם אותיות.
פורסם 2020 בדצמבר 24 שנים טוב. קודם כל - מה ניסית. הכי קל לתת לך תוכנית מוכנה, אבל יותר יועיל לך אם נכוון אותך. מה הכיוונים שלך? על מה חשבת? מה פירוש "בלי מצביעים"? אלא איך? עם מערכים?
פורסם 2020 בדצמבר 24 שנים ציטוט של lina12 נכון, אבל אני צריכה מתוך המערך להדפיס רק את התווים שהם אותיות. הבנתי. אוקיי אז בשביל לדעת איך עושים את התנאי הזה צריך להכיר את טבלת ASCII. https://he.wikipedia.org/wiki/ASCII http://www.asciitable.com/ כפי שאפשר לראות מהטבלה אותיות A עד Z גדולות מסודרות אחת אחרי השנייה והאותיות הקטנות גם כן אז בשביל לבדוק אם קיבלנו אות, עושים כך: int main() { char val; cin >> val; if (val >= 'A' && val <= 'Z' || val >= 'a' && val <= 'z') cout << "yes we got a letter and not a number"; else cout << "we didn't get a letter!"; }
פורסם 2020 בדצמבר 24 שנים ציטוט של Jabberwock הבנתי. אוקיי אז בשביל לדעת איך עושים את התנאי הזה צריך להכיר את טבלת ASCII. https://he.wikipedia.org/wiki/ASCII http://www.asciitable.com/ כפי שאפשר לראות מהטבלה אותיות A עד Z גדולות מסודרות אחת אחרי השנייה והאותיות הקטנות גם כן אז בשביל לבדוק אם קיבלנו אות, עושים כך: int main() { char val; cin >> val; if (val >= 'A' && val <= 'Z' || val >= 'a' && val <= 'z') cout << "yes we got a letter and not a number"; else cout << "we didn't get a letter!"; } שתלמד איך להשתמש בספרייה הסטנדרטית! מיומנות חשובה! #include <ctype.h> // or <cctype> for C++ isalpha(ch)
פורסם 2020 בדצמבר 34 שנים מחבר ציטוט של af db creid טוב. קודם כל - מה ניסית. הכי קל לתת לך תוכנית מוכנה, אבל יותר יועיל לך אם נכוון אותך. מה הכיוונים שלך? על מה חשבת? מה פירוש "בלי מצביעים"? אלא איך? עם מערכים? צריך לעשות עם מערכים. בגדול הצלחתי לעשות את זה בלי מערך. אבל כשניסיתי להפוך את זה למערך הכל התבלבל לי שם. ואת העניין עם האותיות אני יודעת איך לעשות אני פשוט לא מצליחה לסדר את זה ככה שזה ירוץ כמו שצריך. נערך 2020 בדצמבר 34 שנים על-ידי lina12
פורסם 2020 בדצמבר 34 שנים מחבר ציטוט של af db creid מה הקוד שניסית? קיבלתי מערך לפונקציה. חישבתי את הפונקציה באיבר ה-0 וכל פעם קידמתי את המערך ב-1 (כלומר array+1) ואת הפקודת הדפסה שמתי בסוף.
פורסם 2020 בדצמבר 34 שנים מחבר ציטוט של af db creid קוד? void reverse (char str[]){ נערך 2020 בדצמבר 34 שנים על-ידי lina12
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.