שאלה

michal121

New member
שאלה

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

galh

New member
שתי הצעות

במקרה כזה יש לך שתי אפשרויות. הראשונה, למיין את המערך לאחר קבלת מספר והשנייה למיין בסיום קבלת כל המספרים. במקרה שלך, אני מניחמדובר בתרגיל רק שמיון-בועות בסיום הקליטה הכי יתאים.
#define SIZE (10) int arr[SIZE]; int i, j; for (i = 0; i < SIZE ++i) { for (j = 0; j < SIZE ++j) { if (arr < arr[j]) { /* switch arr with arr[j] */ } } }

זה הקוד למיון-בועות, אני מקווה שהוא עובד, כתבתי אותו בלי לבדוק.
 

ליאור ב

New member
ככה..

מיון בועות יספיק פה. לוקחים את האיבר הראשון ומשוים עם השני. אם גדול מהשני ממשיכים לשלישי, עד שמגיעים לסוף, או לאיבר גדול יותר . אם מגיעים לאיבר גדול יותר, מחליפים וממשיכים עם הגדול עד לסוף. אנחנו "מציפים את האיבר הגדול. לאחר מכן נעבור שוב על המערך, עד למקום הלפני אחרון, וכן הלאה. הקוד מצורף. ליאור.
 

Lard

New member
איפה את לומדת , זה נראה כמו השאלות

מהקורסים של האו"פ
 
למעלה