Transcript
Page 1: מערך חד מימדי

מערך חד מימדי

חלק א

היכרות

Page 2: מערך חד מימדי

דוגמא:תינוקות

בית חולים רוצה לבדוק:•

באיזה חודש נולדו הכי הרבה תינוקות?א-נחשב מקסימום מסדרת המספרים

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

באילו חודשים נולדו מספר תינוקות מעל ג-הממוצע?

Page 3: מערך חד מימדי

איך נחשב באילו חודשים נולדו מספר תינוקות •מעל הממוצע?

נחשב את הממוצע סריקה ראשונה:–נסמן את החודשים מעל הממוצע סריקה שניה:–

איך ניסרוק את הנתונים פעמיים??•

יש צורך לשמור את הנתונים מהקלט מסקנה:•

Page 4: מערך חד מימדי

ובו מספר התינוקות לכל מערך )טבלה( קלט:•חודש.

מה גודל המערך?•

פלט:•ממוצע תינוקות שנתי–מספר חודשים מעל הממוצע–מספר חודשים מתחת לממוצע–

Page 5: מערך חד מימדי

babyמערך בשם 01234......9101112

2034504578210120150

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

פנייה לאיברים במערך: baby[1] 1מייצג לידות בחודש מסbaby[2] 2מייצג לידות בחודש מס

baby[12] 12מייצג לידות בחודש מס

Page 6: מערך חד מימדי

בניית מערך דרך א

= שם ] [ טיפוסnew]גודל המערך[טיפוס ;

int [ ] marks = new int[27];

double [ ] hights = new double[123];

char[ ] signs = new char[19];

Page 7: מערך חד מימדי

בניית מערך דרך ב שם ] [ טיפוס;הצהרה

= שםnew]גודל המערך[טיפוס ;בנייה

double [ ] hights;hights = new double[34];

char[ ] signs;signs = new char[19];

Page 8: מערך חד מימדי

כללים

]מציין[שם המערך פנייה לאיבר במערך :•

איברים, nבמערך בעל •,0מציין התא הראשון

n-1מציין התא האחרון

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

אסור לחרוג מגבולות המערך !!!!•

Page 9: מערך חד מימדי

Int [] arr = new int [5];הסברJAVAמימוש ב

arr[3] = in.nextInt;)( 3קליטת נתון לאיבר מספר במערך

for (int i=0;i<5; i++) arr[i] = in.nextInt;)(

קליטת נתונים לכל איברי המערך

System.out.print(arr[4]);-4הדפסת ערכו של האיבר ה

for (int i=0;i<5; i++) System.out.print(arr[i]);

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

Page 10: מערך חד מימדי

דוגמאות נוספותהסברדוגמא

Student = arr[2]; משתנה Student מקבל את ערכו2של האיבר ה-

arr[2] = arr[2] + 4;-4 גדל ב 2האיבר ה

arr[4] = (int)(Math.randon()*10);-מקבל ערך אקראי בין 4האיבר ה 9 ל 0

arr[j] = arr[j+1]; -האיבר הJ מקבל את ערכו של האיבר שבא אחריו

arr[k] = arr[k] -1;- ערך האיבר הK 1 קטן ב

for (int i=0; i<5;i++) arr[i] = 0;

לולאה לאיתחול כל איברי המערך arr 0 ל

for (int i=0; i<5;i++) mult[i] = a[i] * b[i];

השמה של מכפלה איברי מערכים

a ,b למערךmult

Page 11: מערך חד מימדי

גודל המערךגודל מערך תמיד שלם חיובי•

.>שם מערך<lengthפנייה לגודל מערך: •

maarach.length דוגמא:•

גודל מערך יכול להתקבל כקלט•

Int [] grades = new int [in.nextInt()]for (int I =0; i<grades.length; i++)

System.out.print(“ “+grades[i]);

Page 12: מערך חד מימדי

אתחול איברי מערךInt [] arr = {1,2,3,4,5}; אתחול בשלב ההגדרה

Int [] arr = new int[20]; אתחול בפעולת קלט

for (int I =0; i<20; i++)arr[i] = in.nextInt();

Int [] arr = new int[20]; אתחול בפעולת השמה

for (int I =0; i<20; i++)arr[i] = 2*I;

Page 13: מערך חד מימדי

11 עמ 1דוגמא

Page 14: מערך חד מימדי

11 עמ 1טבלת מעקב דוגמא

Page 15: מערך חד מימדי

11 עמ 2דוגמא

Page 16: מערך חד מימדי

11 עמ 2טבלת מעקב דוגמא

Page 17: מערך חד מימדי

12 עמ 3דוגמא פתורה

תלמידי ספורט בקפיצה לגובה20הישגי קלט :•

פלט:•

ממוצע ההישגיםא-

מספרים סידוריים של התלמידים מעל ב-הממוצע

מספר התלמידים מעל הממוצעג-

Page 18: מערך חד מימדי

משתניםתחום ערכים

שם טיפוסהסבר

מערך מערך שמכיל נתוני קפיצות לגובה0-2.5מטיפוס

ממשי

heights

0-50.0

sumממשיסכום נתוני קפיצות לגובה

avgממשיממוצע ההשגים0-2.5iשלםמונה לולאה לסריקת המערך0-19מספר התלמידים שקפצו מעל 0-19

הממוצעaboveAvgשלם

Page 19: מערך חד מימדי
Page 20: מערך חד מימדי

;// double[] heights = new double[20] הגדרת המערך

double sum=0.0, avg; // הצהרות ואיתחול משתנים

int aboveAvg=0; System.out.println ("Enter jumps"); for (int i=0 ; i<heights.length ; i++) ( // לולאה לקריאת נתוני הקפיצות וסיכומם

heights[i] = in.nextDouble(); sum = sum+heights[i]; // סכום הקפיצות

//} for

avg=sum/20; // חישוב ממוצע הקפיצות

System.out.println ("The average of jumps is:" +avg); for (int i=0 ; i<heights.length ; i++) { // לולאה למציאת התלמידים מעל

הממוצע

if (heights[i]>avg) { aboveAvg++;

System.out.println("Student number "+(i+1)+" obove average"); }// if }// for System.out.println(aboveAvg + "students above average");

Page 21: מערך חד מימדי

19 תר 19עמ

מכיל שלשות של מספריםaction מערך •

בכל שלשה:•:חיסור(2:חיבור, 1המספר הראשון מבטא פעולה )–הפעולה מתבצעת על המספרים השני והשלישי–

שומר את התוצאות result מערך •

Page 22: מערך חד מימדי

משתניםשםטיפוסהסבר

Nשלם actionגודל מערך מערך של שומר על השלשות

שלמיםaction

מערך של שומר על התוצאותשלמים

result

ןשלם actionמציין עבור

Kשלם resultמציין עבור

Page 23: מערך חד מימדי

אלגוריתם

actionקרא קלט לתוך מערך • בצע:actionעבור כל שלשה במערך •

: חבר את השני והשלישי 1אם המספר הראשון –resultוהכנס למערך

אחרת: חסר את השני והשלישי והכנס למערך –result

Page 24: מערך חד מימדי

int N=18; int[] action = new int[N]; int[] result = new int[N/3]; int i, k=0; for(i=0 ; i<N; i++) // action קרא קלט לתוך מערך

action[i] = in.nextInt(); for(i=0 ; i<N; i+=3) // action עבור כל השלשות ב

{ if (action[i] == 1) // פעולת חיבור

result[k] = action[i+1]+action[i+2]; else // פעולת חיסור

result[k] = action[i+1]-action[i+2]; k++;; }

Page 25: מערך חד מימדי

14 עמ 4דוגמא פתורה

לקרוא בבית14 עמ :4דוגמא פתורה •

1-8 תר 15-17תרגיל כיתה עמ •

18-19 עמ 13-20, 17 עמ 9-11ש"ב: •


Top Related