סמייל (012) ו – IPv6

לפני שנים רבות (2005) הודיעה חברת סמייל (אז אינטרנט זהב) כי בכוונתה לתמוך בפרוטוקול IPv6. הד לכך נותר בעיתונות האינטרנט. היום גיליתי שאלה ישנה (2012) באתר התמיכה של החברה, והתשובה הייתה מאד מעודדת:             מעודד, מיהרתי ושאלתי גם אני, אך קיבלתי תשובה מאכזבת: … המשך קריאה

CCNA

CCNA היא הסמכת בסיס של חברת סיסקו. רוב הלומדים פנו (ועדיין פונים) להסמכת CCNA, שמתמקדת בנתבים, מתגים ופרוטוקולי הניתוב סביב tcp/ip. לימודי CCNA נפוצים בישראל, אם כי פחות מאשר לפני מספר שנים. מספר מכללות מציעות אותם, במחיר "לא זול". אפשר (ולדעתי כדאי) ללמוד CCNA בלימוד עצמי, ולצורך כך אפשר ליצור סביבת לימוד הכוללת את כל הכלים והידע הנדרש לכך. בעבר פרסמתי מדריך ללימוד עצמי של CCNA באתר routing.co.il (כיום אתר החיפושית ממשיך את דרכו, אך מתמקד בנושאים אחרים). המדריך הזה לא מעודכן ולא מופץ יותר. אוסיף מידע גולמי על CCNA עפ"י ביקוש (למשל בדף זה) באתר החיפושית.   … המשך קריאה

חלל וחינוך

אירוע הפרחת הבלון שהתקיים ב 10 לאוגוסט (2016) במרינה באשקלון מצטרף לשורה ארוכה של אירועים, שהמשותף לכולם הוא: חלל וחינוך. פרוייקטי החלל הגדולים של שנות המלחמה הקרה ניזונו מפחד, ומתחושת מאבק ויוקרה מול הצד האחר. אלה היו שני המעצמות, ברית המועצות וארצות הברית של העידן המפחיד, של אחרי מלחמת העולם השנייה. מרגע שנסתיים פרוייקט אפולו (דצמבר 1972) החלה הדעיכה. שוב לא "בער" לאף אחד לעסוק בחלל, הפרוייקטים הפכו מגושמים וכושלים, והשיגו פחות ופחות. הגשושיות של JPL היו היחידות שעסקו במדע שיטתי ואיטי, ואף צברו הישגים. לבסוף, הושבתה המעבורת, והעיסוק בחלל הגיע למדרגה הנמוכה ביותר שלו – לפחות בארצות הברית. אבל החלל הפרטי החל לצבור תאוצה. בזו אחר זו קמו חברות ואנשים פרטיים, והחלו ליצור את הפרוייקטים שעליהם חלמו, ואת התעשיות שאותן הגו. וגם אנשי החינוך גילו את החלל: פרוייקט spaceil מקווה ליצור בארץ "אפקט אפולו", שבו רבים ייפנו ללימודי מדע וטכנולוגיה … המשך קריאה

ילדים לומדים לתכנת

  כבר בשנות ה – 60 הייתה לכמה מדעני מחשב תחושה שילדים יכולים ללמוד לתכנת בגיל צעיר. כולנו יודעים שילדים מתקשרים בקלות עם טלפונים סלולריים ומשחקים בהתלהבות במשחקי מחשב, אבל האם הם מסוגלים ללכת שלב אחד הלאה, וממש לתכנת ? אנשים רבים חושבים שללמוד לתכנת פירושו ללמוד לחשוב, ושכל אדם צריך ללמוד לתכנת בגיל צעיר, כפי שלומדים מתמטיקה, שחייה, נגינה, ציור וכו'. ברור כי לא כל אחד יהיה נגן מקצועי, שחיין אולימפי או רמבראנט של ימינו, אבל הכישורים הללו מוצאים ביטוי בדרכים רבות בחיי היומיום.   ילדים מתכנתים – ישראל 1975 יש היסטוריה (בארץ!) לתכנות של ילדים. כותב שורות אלה היה ילד בן 10, שנסע (לבד) נסיעה של שעה בקו 25 מבת-ים לרמת אביב. את ד"ר אריקה לנדאו לא היכרתי (פגשתי אותה בסוף השנה – פגישה יחידה מאד מיוחדת), ואין לי מושג כיצד הגיעה הידיעה על "נוער שוחר מדע" לבת-ים. … המשך קריאה

המדריך השלם לכתובות IP – חלק 1

(חלק שני מתוך מדריך IP של החיפושית) קיימים מדריכים רבים לכתובות IP. מדריך IP זה הוא גלגול של מדריך שכתבתי לפני שנים רבות, באתר routing.co.il שכבר נסגר. אין מדובר במדריך מלא לתקשורת IP, כאלה קיימים הרבה. אם אתם מתכנתים הזקוקים להבנת כתובות IP, טכנאי תקשורת או אבטחת מידע מתחילים, תוכלו להתחיל כאן. כתובות IP – מגדיר IP הוא ראשי התיבות של Internet Protocol. אם יש למחשב/טלפון/מכשיר כתובת IP, הרי שהוא חבר ברשת אינטרנט כלשהי (internet),  אולי ברשת האינטרנט (Internet) עצמה. אם ראיתם כתובת המורכבת מארבעה מספרים ונקודות ביניהן (למשל 140.10.59.37), הרי שראיתם כתובת IP. כתובות IP בנויות כך שאפשר יהיה להשתמש בהן ליצירה של רשת ענק, ובה מליונים רבים של מחשבים. בעולם המחשוב אנחנו עשויים לפגוש גם כתובות אחרות, הידועות בשמות "כתובות פיסיות", או "כתובות MAC". אלה אינן כתובות IP. הגירסההנוכחית של פרוטוקול IP היא גירסה 4. בשנים האחרונות גדלה התפוצה … המשך קריאה

ייצוג של עץ בינארי כללי

הייצוג הבא מהווה בסיס למימוש של פעולות ותוכניות העוסקות בעצים בינאריים. הייצוג הוא כללי משום שלא מגדירים בדיוק מהו הטיפוס של התוכן, אלא משתמשים בפרמטרים כללים (generic parameters) כדי לייצג את הטיפוס. מי שיישתמש בייצוג של העץ, יציב במקום הפרמטר את הטיפוס שבו יבחר (למשל int  או string). מה ייצוג של עץ לא כולל: חיפוש לעומק בעץ חיפוש לרוחב בעץ פעולות אחרות הקשורות בעצים אז מה כן כלול ? כל התכונות של צומת בעץ: עלה שמאל עלה ימין המידע האגור בצומת (info ביישום המוצג כאן) הרעיון הוא שהייצוג אמור לייצג צומת אחת, וכי העץ הוא פשוט אוסף של צמתים כאלה המצביעים אלו על אלו. אנו נחזיק רק את הנתונים עצמם, וגם פעולות המאפשרות גישה אל הנתונים לצורך קריאה או כתיבה (set/get). להלן היישום:

  … המשך קריאה

ווידאו

Pong ב – AppInventor

Pong הוא משחק מחשב ישן, אבל "מגניב".
הוא יצא ב – 1972 כמכונת משחק ע"י חברת Atari ומאז זכה לאינספור וריאציות.
אחת מהן נכתבה ע"י תלמיד סדנת AppInventor של החיפושית (חופש פסח 2016).

 

 

 

 

עץ ביטוי בוליאני – בגרות 2015 במדעי המחשב – שאלה 1 (899205)

השאלה מבקשת לחשב ערך של עץ בוליאני, שבו בכל צומת (node) פנימית (כלומר שאיננה עלה) מוגדרת פעולה בוליאנית באמצעות string (כלומר הערך "AND" או הערך "OR"). בסעיף ב' אנחנו מתבקשים לכתוב פעולה שתקבל עץ בוליאני כזה, ותחזיר את ערכו, כלומר תחזיר טיפוס בוליאני אמיתי בשפה (bool בשפת C#, או boolean בשפת Java), ולא string. כדי לחשב את ערכו של כל העץ, צריך לסרוק ולחשב את הביטוי בכל חלקי העץ. ניתן לעשות זאת באמצעות סריקה לעומק (depth first search) שאותה מממשים באמצעות רקורסיה. ניסוח השאלה "חוסך" לנו מספר בדיקות. הנה מה שנתון בשאלה: בכל עלה כתוב "F" או "T". כלומר, אין עלים שכתוב בהם משהו אחר. "בכל צומת שאיננו עלה"..כתוב "AND" או "OR". "לכל צומת שאיננו עלה יש שני בנים" כלומר, אם קראתי "AND" או "OR" אז בוודאות אינני עלה, ובוודאות יש לי שני בנים. אם קראתי "T" או "F" אז … המשך קריאה

נשים ותוכנה

את הפוסט הזה אני כותב לכבוד הבנות שמרתק אותן ללמוד משהו כמו פיתוח אפליקציות, אבל חושבות שיהיה לכך נזק חברתי גדול מדי (גם מול הבנים, אבל בעיקר מול בנות אחרות).. ..וגם לכבוד האימהות שרוצות לשלוח את הבת הצעירה ללמוד פיתוח אפליקציות, אבל מבררות קודם אם "יש עוד בנות", כדי שהבת תרגיש בנוח… אפילו לאבות, אפילו אבות מהתחום, שלא תמיד יודעים מה להגיד ואיך לכוון. אין לי איך לעזור לכן באמת, המציאות מורכבת באמת, ולכן אספר רק את מה שאני יודע. Ada Lovelace תעשו לעצמכם טובה ותקראו את תולדות החיים של האישה הזו. קודם כל – היא המתכנתת הראשונה בהיסטוריה. לא בין הנשים. הראשונה בכלל. אפשר לקחת מהסיפור המדהים הזה דברים רבים. אני בחרתי לקחת את המגוון המטורף של אנשים גדולים שהתאפשר לה לפגוש. אחד מהם היה Charles Babbage, שבנה את מכונת החישוב (אולי מחשב) ש Ada כתבה עבורו את תוכנית המחשב הראשונה. Grace … המשך קריאה

המשמעות של this ב – C# ו – Java

להלן שאל, קוד (C# או Java)  מתוך בחינת בגרות במדעי המחשב לכיתה יא (מדעי המחשב א'): במחלקה "תכשיט" (Jewel) יש שתי תכונות: מחיר התכשיט – price מטיפוס שלם, ו – האם התכשיט מזהב, isGold, מטיפוס בוליאני. בעבור תכשיט מזהב ערך isGold הוא true, אחרת isGold הוא false. במחלקה Jewel שתי מחלקות בונות. להלן המחלקה Jewel:   C#:

  Java:

א. כתוב ב – Java  או ב – C# את גוף הפעולה המסומנת ב – *. ב. כתוב ב – Java  או ב – C# את גוף הפעולה המסומנת ב – **. הפתרון ב C# נציג את הפתרון ב C# (הקוד כמעט זהה ב Java).

מטרת הפעולות הבונות במקרה זה היא אתחול התכונות של עצמי המחלקה. מהי המשמעות של המילה this בתוכנית  ? המילה השמורה this המילה this בשפות מבוססות עצמים (object oriented) היא מילה שמורה בשפה (בדומה למילה … המשך קריאה