ABA


"תקוע קשות בשאלה בC++"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #15618 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 15618
kutumaster 
חבר מתאריך 19.9.06
19325 הודעות
   20:45   17.12.09   
אל הפורום  
  תקוע קשות בשאלה בC++  
 
   1. כתבו תוכנית הקולטת שתי מחרוזות בגודל SIZE לכל היותר (גודל קבוע אותו ניתן לשנות לפני הפעלת התוכנית) ומבצעת את הפעולות הבאות (כל אחת מהפעולות תמומש באמצעות פונקציה שונה):
1. תבדוק האם המחרוזות הן פולינדרומים
2. תבדוק איזה מחרוזת גדולה באורכה מהשניה (אין להשתמש בפונק' STRLEN)
3. תיצור מחרוזת חדשה ותשרשר לתוכה את שתי המחרוזות. לאחר מכן תדפיס אותה
4. תבדוק כמה פעמים מופיעה המחרוזת הראשונה בשניה ותדפיס פלט מתאים (אין להשתמש בפונקציה מהספריה CSTRING)
להלן דוגמאות פלט עבור N=10. קלט המשתמש מסומן בכחול:
Please enter the first string: abcbcb
Please enter the second string: bcb
The first string is not palindrome. The second string is palindrome
The first string is longer than the second (first – 6 chars, second – 3 chars)
The combined string is abcbcbbcb
The second string is a substring of the first string. It appears 2 times at indexes 1, 3


סעיף 4 הזה, כלום לא מצליח לי איתו
יש אולי למישהו כיוון ?

בברכה,


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  איך אתה ניגש לתרגיל הזה ? Net_Boy  17.12.09 23:11 1
     תודה אחי, נשמע באמת כמו כיוון מעניין kutumaster  18.12.09 02:27 2
  יש למישהו עוד רעיונות? אני דיי תקוע kutumaster  21.12.09 18:21 3
     טעות.. למחוק חומוס 21.12.09 18:37 4
     הנה קוד לדוגמא - לא נבדק ונרשם מאד מהר אז תוודא שעובד Net_Boy  22.12.09 19:42 5
         תודה רבה אחי kutumaster  22.12.09 22:36 6
             שאתה מעביר מערך אתה מעביר מצביע Net_Boy  25.12.09 13:16 7

       
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   23:11   17.12.09   
אל הפורום  
  1. איך אתה ניגש לתרגיל הזה ?  
בתגובה להודעה מספר 0
 
   תנסה לחשוב על אלגוריתם פסואדו קוד
אני אתן לך כיוון לחשוב

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

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

זה אמור לסגור לך את כל הפינות


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
kutumaster 
חבר מתאריך 19.9.06
19325 הודעות
   02:27   18.12.09   
אל הפורום  
  2. תודה אחי, נשמע באמת כמו כיוון מעניין  
בתגובה להודעה מספר 1
 
   מחר אני ינסה ליישם אותו
תודה ולילה טוב!

בברכה,


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
kutumaster 
חבר מתאריך 19.9.06
19325 הודעות
   18:21   21.12.09   
אל הפורום  
  3. יש למישהו עוד רעיונות? אני דיי תקוע  
בתגובה להודעה מספר 0
 
  

בברכה,


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
חומוס לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 22.4.02
13069 הודעות, 5 פידבק
   18:37   21.12.09   
אל הפורום  
  4. טעות.. למחוק  
בתגובה להודעה מספר 3
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   19:42   22.12.09   
אל הפורום  
  5. הנה קוד לדוגמא - לא נבדק ונרשם מאד מהר אז תוודא שעובד  
בתגובה להודעה מספר 3
 
  

int CountSubStrOccurrences(char* pszMainStr ,char* pszSubStr)
{
unsigned int iMainStrSize = (unsigned int)strlen(pszMainStr);
unsigned int iSubStrSize = (unsigned int)strlen(pszSubStr);
unsigned int iCount = 0;

for(unsigned int i=0;i<iMainStrSize-iSubStrSize+1;++i)
{
bool bFoundOccurence = true;
for(unsigned int j=0;j<iSubStrSize && bFoundOccurence;++j)
{
if(pszMainStr != pszSubStr)
bFoundOccurence = false;
}
if(bFoundOccurence)
++iCount;
}
return iCount;
};


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
kutumaster 
חבר מתאריך 19.9.06
19325 הודעות
   22:36   22.12.09   
אל הפורום  
  6. תודה רבה אחי  
בתגובה להודעה מספר 5
 
   רק הבעיה שעל מצביעים למדתי רק אתמול ולכן אסור לי להשתמש בזה :\

בברכה,


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   13:16   25.12.09   
אל הפורום  
  7. שאתה מעביר מערך אתה מעביר מצביע  
בתגובה להודעה מספר 6
 
   אז זה לא משנה אם בכותרת של הפונקציה רשום סוגריים מרובעות או כוכב זה אותו דבר
ולכן האלגוריתם שרשום פה טוב לך


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net