ABA


"איך כותבים ב- C פונקציה שמשנה מערך של נתונים ואיך קוראי"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #13250 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 13250
chenke 
חבר מתאריך 1.7.02
730 הודעות
   14:51   30.04.06   
אל הפורום  
  איך כותבים ב- C פונקציה שמשנה מערך של נתונים ואיך קוראי  
 
   עבר עריכה לאחרונה בתאריך 30.04.06 בשעה 18:23 על-ידי nesher (מנהל הפורום)
 
ואיך קוראים לה?
אני מעוניין לכתוב פונקצייה שממיינת מערך. כתבתי את הקוד הבא:

void sortArrays(int *a,int num)
{

int change=1,temp;
while(change=1)
{
change=0;
for(int i=0;i<num-1;i++)
if (a{i}>a{i+1})
{
temp=*a{i};
a{i}=a{i+1};
*a{i+1}=temp;
change=1;
}
}


}


בפונקציה שקוראת ל- sortArrays, יש לי מערך שאני מעוניין למיין ולכן אני משתמש בקוד הבא:
int keys{50};
sortArrays(&keys,4);
אבל מקבל הודעת שגיאה על המרה. איך אני צריך לקרוא לפונקציה.

חן.


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  מערך שולחים רק עם השם שלו כי הוא כבר פויינטר.. XpDuDee 30.04.06 15:42 1
     הקוד יצא משובש chenke  30.04.06 18:18 2
         רשום a boynet 30.04.06 18:22 3
             עזרתי לו קצת עם זה nesher  30.04.06 18:23 4
  או שאני חלוד בc או שסתם לא הבנתי את הקוד כנס boynet 30.04.06 19:11 5
     יכול בהחלט להתקיים chenke  30.04.06 19:44 6
  בהגדרת הפונקציה תעשה.. XpDuDee 30.04.06 19:45 7
     תודה, הסתדר chenke  30.04.06 20:38 8

       
XpDuDee

   15:42   30.04.06   
אל הפורום  
  1. מערך שולחים רק עם השם שלו כי הוא כבר פויינטר..  
בתגובה להודעה מספר 0
 
   ולא ממש הבנתי את הקוד שלך בכלל..
אם a>a ? זה בחיים לא יתקיים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
chenke 
חבר מתאריך 1.7.02
730 הודעות
   18:18   30.04.06   
אל הפורום  
  2. הקוד יצא משובש  
בתגובה להודעה מספר 1
 
   ערכתי לאחרונה בתאריך 30.04.06 בשעה 18:32 בברכה, chenke
 
אני מצרף אותו בקובץ מצורף. בכל אופן שיניתי את הקריאה לפונקצייה ע"י ציון רק שם בהמערך ועדיין אני מקבל הודעת שגיאה מהסוג
error C2664: 'sortArrays' : cannot convert parameter 1 from 'int ' to 'int *'

איך בכל זאת אני קורה לפונקציה?

https://rotter.name/User_files/nor/4454d86e650378cb.txt


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

   18:22   30.04.06   
אל הפורום  
  3. רשום a  
בתגובה להודעה מספר 2
 
   תקשיב תרשום כאן את הקוד שוב
ותשים אותו בין תגיות {code} {/code} רק עם סוגרים מרובעים רגילים כאלה
דזה יצא ככה

ככה יותר נוח


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

   18:23   30.04.06   
אל הפורום  
  4. עזרתי לו קצת עם זה  
בתגובה להודעה מספר 3
 
  


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

   19:11   30.04.06   
אל הפורום  
  5. או שאני חלוד בc או שסתם לא הבנתי את הקוד כנס  
בתגובה להודעה מספר 0
 
  

if (a{i}>a{i+1})

אתה מודע לזה שזה בחיים לא יתקיים?
כל מה שהפונקציה עושה זה בעצם כלום
היא נכנסת ללואת while משנה את הchange ל0
בודקת אם הif מתקיים שזה בוודאי שלא
ואז יוצאת מהלולאה

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
chenke 
חבר מתאריך 1.7.02
730 הודעות
   19:44   30.04.06   
אל הפורום  
  6. יכול בהחלט להתקיים  
בתגובה להודעה מספר 5
 
   מדובר כאן ב "מיון בועות", ומה שה- if הזה שואל זה האם האיבר במיקום i במערך, גדול מהאיבר במקום ה- i+1, במידה וזה מתקיים הוא מחליף בין האיברים האלה. כך הוא עובר על כל num האיברים מהמערך כמה פעמים עד שהוא מגיע למצב שבו change נשאר שווה לאפס וזה אומר שהאברים במערך ממויינים.


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

   19:45   30.04.06   
אל הפורום  
  7. בהגדרת הפונקציה תעשה..  
בתגובה להודעה מספר 0
 
  

int a סוגריים מרובעים אחרי הa

או


int *a

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
chenke 
חבר מתאריך 1.7.02
730 הודעות
   20:38   30.04.06   
אל הפורום  
  8. תודה, הסתדר  
בתגובה להודעה מספר 7
 
  


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

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

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



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