ABA


"עזרה בC - פונקציה רקורסיבית"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #12583 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 12583
Niv2001

   16:43   19.10.05   
אל הפורום  
  עזרה בC - פונקציה רקורסיבית  
 
   ערכתי לאחרונה בתאריך 19.10.05 בשעה 16:45 בברכה, Niv2001
 
אני צריך לכתוב פונקציה (רקורסיבית בלבד) שתחזיר לי את המיקום של הספרה הכי גדולה במספר. אם יש שתי ספרות הכי גדולות אז את המיקום של הימנית ביותר. מיקום במספר מתחיל מימין לשמאל ולא ההפך. לדוגמא במספר: 3954
הפונקציה תחזיר 3 כי זה המיקום של הספרה 9. במספר 6462 הפונקציה תחזיר 2כי זה המיקום של הספרה 6 הימנית ביותר. מקווה שהייתי מובן.
תודה!


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  תראה מה רשמת עד עכשיו ונעזור לך לתקן nesher  19.10.05 17:01 1
  תעשה פונקציה שמקבלת 4 פרמטרים Gold Dragon 20.10.05 18:53 2
  תודה הסתדרתי... Niv2001 20.10.05 21:20 3

       
nesher 

   17:01   19.10.05   
אל הפורום  
  1. תראה מה רשמת עד עכשיו ונעזור לך לתקן  
בתגובה להודעה מספר 0
 
  


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

   18:53   20.10.05   
אל הפורום  
  2. תעשה פונקציה שמקבלת 4 פרמטרים  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 20.10.05 בשעה 18:54 בברכה, Gold Dragon
 

int func(int max_num,int max_pos,int curr_pos,int num);

אתה קורא לה בהתחלה ככה - עם המספר 3954 לדוגמא:


func(0,1,1,3954);

עכשיו גוף הפונקציה:


int func(int max_num,int max_pos,int curr_pos,int num)
{
int nCurrDigit;
if(num / 10 == 0)
{
if( num % 10 > max_num )
{
return curr_pos;
}
else
{
return max_pos;
}
}
else
{
nCurrDigit = num % 10;
if (nCurrDigit > max_num)
{
return(func(nCurrDigit,curr_pos,curr_pos + 1,num / 10));
}
else
{
return(func(max_pos,max_pos,curr_pos + 1,num / 10));
}
}
}


אתה מוזמן לשאול אם לא הבנת משהו...


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

   21:20   20.10.05   
אל הפורום  
  3. תודה הסתדרתי...  
בתגובה להודעה מספר 0
 
  


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

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

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



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