מבקשת עזרה

michal121

New member
מבקשת עזרה

אני רוצה לבנות תוכנית שקולטת 2 מערכים חד מימדים באורך N,M ממוינים בסדר עולה ועל התוכנית למזג את2 מערכים למערך אחד ממויין בגודל N+M ולהדפיס את המיזוג אני מנסה ומנסה ולא מצליחה איך בכלל משתמשים במערך כמשתנה כימה שאני יודעת זה על מערכים עם מספרים כלומר שידוע לי מספר אברים במערך אז בבקשה עזרו לי
 

yair24

Member
מאד היינו רוצים לעזור לך

אבל המשפטים האחרונים לשך לא ממש ברורים נסחי אותם עוד פעם.
 

michal121

New member
אז ככה

בנושא מערכים אני יודעת להשתמש רק כאשר נתון לי מספר כלומר d[7] ואני לא יודעת איך להשתמש במערך שבו נתון לי משתנה כלומר איך אני בונה תוכנית שמשתמשת במערך N,M
 

yair24

Member
למה את מתכוונת...

כשאת אומרת נתון לי משתנה אני לא מבין
 

yair24

Member
מה את מתכוונת כאילו...

איך את מעבירה מערך כפרמטר לפונקציה?
 

תמר,

New member
האותיות M ו-N

הם האורך של הערך הראשון והשני. הם לא ידועים ואת יכולה להגדיר אותם בעצמך בתוכנית או תוך-כדי קליטת הנתונים
 

עידית_

New member
אז יש לך שתי אפשרויות:

1. אפשרות אחת: להגדיר בתוכנית את N,M בפקודות מקרו, למשל:
#define N 10 #define M 7​
עכשיו את יכולה להשתמש בהם כרגיל כמו קבועים:
int array[N]; int array[M];​
2. אפשרות שנייה: לבקש מהמשתמש להקליד את 2 הגדלים כרצונו, לקלוט אותם למשתנים N,M ולהשתמש בהקצאה דינמית (ע"י הפונקציות malloc או calloc). את שתי האפשרויות הייתם אמורים ללמוד, אם נתנו לכם שאלה כזאת. אם לא למדתם, אז תקראי על הפונקציות שהזכרתי, ותלמדי איך להשתמש בהן. בכל אופן בשתי האפשרויות, את המערך החדשה את מקצה באותו אופן כמו 2 הראשונים, רק בגודל N+M. מקווה שעזרתי.
 

ליאור ב

New member
הנה קוד ב- ++C

בבקשה. מצורף קובץ עם הקוד. זה נקרא "מיון-מיזוג" "Merge sort" הוספתי הרבה הערות. אם בכל-זאת לא מובן, אני פה. ליאור.
 
למעלה