הוצאת חושבים קדימה הילה קדמן חלק ב יעוץ מקצועי: חיים אברבוך מותאם לתכנית הלימודים החדשה בבתי הספר התיכוניים
מהדורה חמישית הוצאת חושבים קדימה ת.ד. 1293 רעות 71908 www.kadman.net הילה קדמן 0522 525527 kadman11@gmail.com כל הזכויות שמורות למחברת פרט לזכויות על השאלות מבחינות הבגרות, אשר שמורות למדינת ישראל אין להעתיק, לצלם או לשכפל קטעים מהספר בכל דרך שהיא, ללא אישור בכתב מההוצאה לאור.
פתח דבר הספר עוסק ביסודות מדעי המחשב ומותאם לתוכנית הלימודים בבתי הספר התיכוניים. לימוד לפי פרקי הספר חושף את הלומד לעולם חדש של מושגים ורעיונות, מהווה צעד ראשון בעולם מדעי המחשב, ומשמש הכנה לפרק "עיצוב תוכנה". הדגשים עיקריים: לימוד המבנה התחבירי של השפה, תוך התבססות על עצמים. לימוד תבניות אלגוריתמיות )חשיבתיות(. פיתוח חשיבה מתמטית. יכולת פתרון בעיה אלגוריתמית דרך פיתוח מיומנויות של הבנה, גילוי הפתרון האלגוריתמי, חלוקת הבעיה לתתי בעיות, ניתוח יעילות ואימות הפתרון. הערות לפי תכנית הלימודים החדשה, בסיום פרק יסודות יהיה התלמיד מסוגל לממש תכניות תוך שימוש במחלקות ועצמים. מורה המעוניין ללמד בשיטת עצמים תחילה, יכול להתחיל ללמד את פרק 13 אחרי פרק 5 )החושף את התלמיד לשימוש בפעולות מוכנות( ולחזור לפרק זה תוך התקדמות בפרקים האחרים בספר, או ללמד את הפרק בסדר שבו הוא מובא בספר, אחרי שהתלמיד מכיר ויודע לכתוב פעולות משלו. יעילות: בתוכנית הלימודים אין הכרח לכתוב תכנית יעילה. לעומת זאת בעולם המעשי יעילות הינה שיקול חשוב בעת בחירת האלגוריתמים לפתרון. כמו כן בפרק הבא של חומר הלימוד )"עיצוב תוכנה"( נלמד הנושא. לפיכך השתדלנו לתת את הדעת לנושא בספר אם כי לא באופן נרחב. כל המחלקות המוכנות המוזכרות בפרק - 11 שימוש במחלקות קיימות ניתנות להורדה בכתובת:.Java בדף יסודות בסביבת http://blog.csit.org.il/myblog.aspx?blogid=33 בסיום כל פרק מומלץ לפתור את התרגילים, אשר פתרונם יביא להטמעת הנושא שנלמד. התרגילים מסתמכים על הפרק שנלמד ועל כל הפרקים הקודמים, ולכן מומלץ לא לדלג על פרק. למשל - התרגילים בפרק - 14 מערך של עצמים, מסתמכים על המחלקות שנכתבו בפרק - 13 עצמים ומחלקות. חלק מפרקי ספר זה מהווים פרקי רשות לתלמידים ברמה הרגילה, ובנוסף, חלק מהנושאים שבפרקי הרשות מהווים העשרה גם לתלמידי הרמה המוגברת. מומלץ לבדוק ולהשוות מול תכנית הלימודים. הילה קדמן, חיים אברבוך
תוכן העניינים מקוצר מספרים אקראיים פעולות של המחלקה הראשית מערך חד ממדי שימוש במחלקות מוכנות מחרוזות String עצמים ומחלקות מערך של עצמים פרק 8 פרק 9 פרק 10 פרק 11 פרק 12 פרק 13 פרק 14 פרק 15 פרק 16 פרק 17 מערך דו ממדי - מטריצה מיון ומיזוג מערכים הרחבה על מחלקות פרק העשרה ביסודות
תוכן העניינים מפורט פרק 8 מספרים אקראיים שלב 1: יבוא מחלקה... 8-1 שלב 2: יצירת אובייקט מהמחלקה...Random 8-1 שלב 3: יצירת מספר אקראי... 8-2 מספר אקראי זוגי חיובי קטן מערך מספרי נתון... 8-5 מספר אקראי זוגי בתחום נתון... 8-5 תרגילים... 8-7 פעולות של המחלקה הראשית פרק 9 הליך - פעולה לביצוע משימה מוגדרת... 9-1 מבנה הפעולה... 9-3 כותרת הפעולה... 9-3 גוף הפעולה... 9-4 זימון הפעולה... 9-4 תיעוד הפעולה... 9-7 משמעות ה-... return 9-7 תרגילים... 9-8 העברת פרמטרים לפעולה... 9-10 משתנים כלליים ומשתנים מקומיים... 9-11 פרמטרים של ערך... 9-11 העמסת פעולות... 9-12 פעולה שהיא מסננת קלט... 9-13 תרגילים... 9-18 יצירה של מחלקת שרות... 9-22 דף עבודה - מחלקת שרות לתווים... 9-23 פרק 10 מערך חד ממדי מערך של ערכים... 10-1 שלבים ביצירת מערך... 10-1 הגדרת הפנייה למערך... 10-1 הקצאת מקום בזיכרון עבור איברי המערך... 10-2 פנייה לאיבר במערך... 10-3 ההתייחסות לאיברי המערך... 10-3 גודל המערך... 10-3 קלט למערך והדפסתו... 10-4 תרגילים... 10-5 אתחול המערך... 10-7
פעולות על מערכים... 10-7 מספר המופעים של איבר... 10-11 הערך המקסימאלי במערך... 10-11 מקומו של הערך המקסימאלי במערך... 10-12 חיפוש סידרתי במערך... 10-13 מקומו של האיבר במערך... 10-14 האם קיים איבר במערך המקיים תנאי... 10-17 האם כל איברי המערך מקיימים תכונה... 10-17 חיפוש השכיח... 10-18 חיפוש בינארי... 10-20 מחלקת שרות לטיפול במערך... 10-22 תרגילים... 10-23 קשרים בין מערכים... 10-24 מערך של תווים... 10-25 תרגילים... 10-27 מערך של צוברים, מערך של מונים... 10-29 משתנים סטטיים... 10-31 תרגילים... 10-35 מערך של מונים... 10-36 תכניות כלליות... 10-37 שאלות מבחינות בגרות... 10-38 2 יח"ל - שאלון... 899222 10-38 3 יח"ל - שאלון... 899303 10-44 פרק 11 שימוש במחלקות מוכנות יצירת עצם חדש - פעולה בונה... 11-2 הפניות... 11-3 פעולות המחלקה... 11-4 תרגילים... 11-6 מחלקות גראפיות... 11-9 א. מחלקת הצב... Turtle 11-9 תרגילים... 11-10 ב. הספרייה הגראפית... 11-12 המחלקה בד-ציור...Canvas 11-13 המחלקה ריבוע -...Square 11-13 המחלקה מלבן - Rect... 11-14 המחלקה עיגול -...Circle 11-14 המחלקה משולש -...Triangle 11-15 המחלקה קו -...Line 11-15 המחלקה טקסט - Text... 11-16 שילוב המחלקה הגראפית בתכנית... 11-16 תרגילים... 11-17
פרק 12 מחרוזות String הגדרת מחרוזת... 12-1 יצירת מחרוזת באמצעות פעולות בונות... 12-1 אתחול בהגדרה - יצירת מחרוזת בפעולת השמה... 12-2 קלט למחרוזת... 12-2 שרשור )צירוף( מחרוזות- האופרטור +... 12-2... 12-3 פעולות על מחרוזת אורך המחרוזת - length()... 12-3 -...charat(n) 12-3 החזרת תו במחרוזת השוואת מחרוזות... 12-4 12-4... equals() - מחרוזות זהות I 12-5... compareto() - מי קודם למי II חיפוש תווים ותת-מחרוזות במחרוזת... 12-6 - indexof()... 12-6 חיפוש תו במחרוזת - indexof()... 12-6 חיפוש תת-מחרוזת במחרוזת פעולות המחזירות מחרוזת חדשה... 12-8 תת-מחרוזת substring()... 12-8 החלפת תת-מחרוזת - () replace... 12-9 מחיקה והוספה למחרוזת... 12-10 מחיקה והוספה של קבוע מחרוזתי... 12-10 מחיקה והוספה במיקום נתון במחרוזת... 12-10 - () tolowercase... touppercase () 12-11 שינוי רישיות תרגילים... 12-11 שאלות מבחינות בגרות... 12-14 - שאלון... 899222 12-14 2 יח"ל - שאלון... 899303 12-17 3 יח"ל פרק 13 עצמים ומחלקות הכרזה על מחלקה... 13-1 תוכן המחלקה... 13-2 תכונות המחלקה... 13-2 פעולות המחלקה... 13-3 הפעולה הבונה... constructor 13-4 פעולות מאחזרות -...get 13-5 פעולות קובעות - set... 13-6 הפעולה...toString 13-6 היכן נכתבת המחלקה... 13-7 התכנית הראשית... 13-8 תרגילים... 13-9 תקשורת בין עצמים... 13-12 פעולה פנימית ופעולה חיצונית... 13-13 פעולה המחזירה עצם... 13-14 תכונות של המחלקה... 13-16 הגדרת תכונה של מחלקה... 13-16 פנייה לתכונה של מחלקה... 13-16
הגדרת קבועים כתכונות של מחלקה... 13-17 ההבדל בין תכונות של מופע ותכונות של מחלקה... 13-17 מערך כתכונה של מחלקה... 13-18 הוספה למערך בצורה ממוינת... 13-20 תרגילים... 13-21 דף עבודה: בלק ג'ק... 13-23 ממשק המחלקה - יצירת...JavaDoc 13-24 פרק 14 מערך של עצמים הגדרת המערך... 14-1 מילוי המערך... 14-2 הדפסת המערך... 14-2 היפוך מספר תלת ספרתי... 14-3 סכום המערך... 14-4 חיפוש איבר במערך... 14-4 תרגילים... 14-5 שאלות מבוססות על שאלות מבחינות בגרות... 14-7 פרק 15 מערך דו-ממדי - מטריצה הגדרת מערך דו-ממדי... 15-2 הקצאת מקום בזיכרון עבור איברי מערך דו-ממדי... 15-2 פנייה לתא במערך דו-ממדי... 15-2 ממדי המערך הדו-ממדי... 15-3 מילוי והדפסת מערך דו-ממדי... 15-4 טיפול בשורה ובעמודה... 15-5 האם איברי שורה row מממוינים בסדר עולה... 15-5 האם איברי כל השורות במערך ממוינות בסדר עולה... 15-5 האם קיים איבר x בעמודה... j 15-6 הטיפול באלכסונים... 15-6 אלכסון ראשי... 15-6 אלכסון משני... 15-6 תרגילים... 15-7 שאלות מבחינות בגרות... 15-11 2 יח"ל - שאלון... 899222 15-11 3 יח"ל - שאלון... 899303 15-14 תרגילים מתקדמים... 15-16 דף עבודה 1: איקס עיגול... 15-18 דף עבודה 2: שולה המוקשים... 15-19 דף עבודה 3: רברסי... 15-21
פרק 16 מיון ומיזוג מערכים מיון מערכים... 16-1 מיון הכנסה - Sort...Insertion 16-1 מיון בועות - Sort... Bubble 16-3 מיון בחירה - Sort... Selection 16-6 תרגילים - מיון מערכים... 16-7 פיצול מערכים... 16-8 תרגילים - פיצול מערכים... 16-10 מיזוג מערכים... 16-11 תרגילים - מיזוג מערכים... 16-12 דף עבודה: תחרות מדעי המחשב... 16-13 דף עבודה: מיון קלפים... 16-14 פרק 17 הרחבה על מחלקות עצמים המורכבים מעצמים... 17-1 אחזור תכונות העצם... 17-3 עדכון תכונות העצם... 17-4 הפעולה tostring()... 17-4 עצם המכיל מערך של עצמים... 17-5 פעולות ציבוריות ופעולות פרטיות... 17-8 תרגיל - המחלקה... Date 17-9 הרחבה על פעולות בונות... 17-10 פעולה בונה מעתיקה... 17-11 תרגילים... 17-12 דף עבודה 1: הטל וצבור... 17-14 דף עבודה 2: מגש של פיצה... 17-16