Menu
Coddy logo textTech

אלגוריתמים למערכים

חלק מהיחידה יסודות במסלול ה-C של Coddy. שיעור 59 מתוך 63.

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

מציאת הערך המרבי במערך:

// אתחל מערך
int numbers[] = {4, 9, 2, 7, 5};

// קבע את הערך ההתחלתי של max לאיבר הראשון
int max = numbers[0];
// השווה לאיברים האחרים
for (int i = 1; i < 5; i++) {
    if (numbers[i] > max) {
        max = numbers[i];
    }
}

// כעת max מכיל את הערך הגדול ביותר (9)

מציאת הערך המינימלי פועלת באופן דומה:

// הגדר את min ההתחלתי לאיבר הראשון
int min = numbers[0];

// השווה לאיברים האחרים
for (int i = 1; i < 5; i++) {
    if (numbers[i] < min) {
        min = numbers[i];
    }
}

// כעת min מכיל את הערך הקטן ביותר (2)

סכימת כל האיברים במערך:

int sum = 0;

// הוסף כל איבר ל-sum
for (int i = 0; i < 5; i++) {
    sum += numbers[i];
}

// כעת sum מכיל את הסכום הכולל (27)
challenge icon

אתגר

קל

כתבו פונקציה בשם findAverage שמחשבת את הממוצע של כל האיברים במערך של מספרים שלמים.

הפונקציה צריכה:

  1. לקבל מערך של מספרים שלמים ואת הגודל שלו כפרמטרים
  2. לחשב את סכום כל האיברים
  3. לחלק את הסכום במספר האיברים כדי לקבל את הממוצע
  4. להחזיר את הממוצע כערך מסוג float

לאחר חישוב הממוצע, הדפיסו את התוצאה עם בדיוק 2 ספרות אחרי הנקודה העשרונית באמצעות: printf("Average: %.2f\n", average);

נסו בעצמכם

#include <stdio.h>

// כתבו כאן את הפונקציה findAverage שלכם

int main() {
    int size;
    scanf("%d", &size);
    
    int numbers[size];
    
    // קראו את איברי המערך
    for (int i = 0; i < size; i++) {
        scanf("%d", &numbers[i]);
    }
    
    // קראו לפונקציה שלכם והדפיסו את התוצאה
    float average = findAverage(numbers, size);
    printf("Average: %.2f\n", average);
    
    return 0;
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר C אונליין