Presentation is loading. Please wait.

Presentation is loading. Please wait.

מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;

Similar presentations


Presentation on theme: "מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;"— Presentation transcript:

1 מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20; שימוש במערך מאפשר לנו להגדיר שימוש במערך מאפשר לנו להגדיר int grade[20]; int grade[20]; או לכל טיפוס נגדיר או לכל טיפוס נגדיר type name[100]; type name[100];

2 מערכים הפניה לאברי המערך נעשית באמצעות אינדקס. הפניה לאברי המערך נעשית באמצעות אינדקס. לאיבר הראשון נפנה כך: לאיבר הראשון נפנה כך: grade[0] grade[0] לאיבר האחרון נפנה כך: לאיבר האחרון נפנה כך: grade[19] grade[19] באמצעות הגדרה זו הגדרנו 20 משתנים מסוג int היתרון הגדול הוא שכעת ניתן לגשת אליהם באמצעות לולאה. באמצעות הגדרה זו הגדרנו 20 משתנים מסוג int היתרון הגדול הוא שכעת ניתן לגשת אליהם באמצעות לולאה.

3 אתחול מערכים אתחול באמצעות לולאה אתחול באמצעות לולאה #define SIZE 10 int main() { int i, arr[SIZE]; for(i = 0; i < SIZE; i++) arr[i] = 0; { נשים לב שהלולאה מתחילה מ 0. קבוע שקובע את גודל המערך איפוס המערך באמצעות לולאה

4 אתחול מערכים אתחול בשורת ההגדרה ( אפשרי רק בשורת ההגדרה). אתחול בשורת ההגדרה ( אפשרי רק בשורת ההגדרה). int main() { int arr[SIZE] = {0}; }

5 באמצעות אתחול בשורת ההגדרה ניתן לאתחל כל אחד מאיברי המערך למשל באמצעות אתחול בשורת ההגדרה ניתן לאתחל כל אחד מאיברי המערך למשל int arr[5] = {1,2,3,4,5}; int arr[5] = {1,2,3,4,5}; מה שקורה זה מה שקורה זה Arr[0] = 1, arr[1] = 2,…, arr[4] = 5 Arr[0] = 1, arr[1] = 2,…, arr[4] = 5 זה שקול לשורה באה זה שקול לשורה באה int arr[ ] = {1,2,3,4,5}; int arr[ ] = {1,2,3,4,5};

6 int arr[5] = {1,2}; int arr[5] = {1,2}; במקרה זה איברי המערך יקבלו את הערכים: במקרה זה איברי המערך יקבלו את הערכים: Arr[0] = 1, arr[1] =2 Arr[0] = 1, arr[1] =2 Arr[2] = arr[3] = arr[4] = 0 Arr[2] = arr[3] = arr[4] = 0 אם ניתן רשימה ארוכה מדי אז זו טעות. אם ניתן רשימה ארוכה מדי אז זו טעות.

7 נכתוב תוכנית המדפיסה את איברי המערך והיסטגרמה של האיברים נכתוב תוכנית המדפיסה את איברי המערך והיסטגרמה של האיברים לדוגמא: לדוגמא: אם איברי המערך הם 1 2 4 אז יודפס אם איברי המערך הם 1 2 4 אז יודפס 0 1 * 1 2 ** 2 4 **** מערכים

8 תוכנית המדפיסה את איברי המערך והיסטוגרמה שלהם #include #include #define SIZE 6 Int main() { int arr[SIZE] = {4, 3, 5, 7, 1, 3}; int i,j;

9 תוכנית המדפיסה את איברי המערך והיסטוגרמה שלהם for(i = 0; i < SIZE; i++) { printf(“%7d%7d “, i, arr[i]); for(j = 0; j < arr[i]; j++) printf(“*”);printf(“\n”);} return 0; }

10 מערכים נכתוב תוכנית הקולטת את הערכת התלמידים לקורס (מספר בין 1 ל 7) ומדפיסה כמה פעמים הופיע כל ציון. נניח שהקלט נגמר בציון 1-. נכתוב תוכנית הקולטת את הערכת התלמידים לקורס (מספר בין 1 ל 7) ומדפיסה כמה פעמים הופיע כל ציון. נניח שהקלט נגמר בציון 1-.

11 מערכים int main() { int i,frequency[7]={0}; int grade; printf(“Insert you grade\n”); scanf(“%d”,&grade); קלט ראשוני איפוס

12 מערכים …. while (grade != -1) {frequency[grade-1]++; printf(“Insert your grade\n”); scanf(“%d”,&grade);}

13 מערכים for(i=1;i<=7;i++) printf(“The grade %d appears%d”, frequency[i-1]); i, printf(“The grade %d appears%d”, frequency[i-1]); i, Return 0; } הדפסה

14 מערכים – סיכום משמשים להגדרת קבוצות משתנים מאותו הסוג משמשים להגדרת קבוצות משתנים מאותו הסוג ניתן לפנות לכולם באמצעות שם המערך בצרוף אינדקס ניתן לפנות לכולם באמצעות שם המערך בצרוף אינדקס המערך מתחיל מ 0 המערך מתחיל מ 0 גודל המערך חייב להיות קבוע. גודל המערך חייב להיות קבוע. פניה לאיבר במערך עם אינדקס מחוץ לתחום המערך למשל בתוכנית הקודמת פניה ל frequency[7] לא תייצר טעות קומפילציה אלא טעות בזמן ריצה. פניה לאיבר במערך עם אינדקס מחוץ לתחום המערך למשל בתוכנית הקודמת פניה ל frequency[7] לא תייצר טעות קומפילציה אלא טעות בזמן ריצה.


Download ppt "מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;"

Similar presentations


Ads by Google