רובוט עומד על לוח של 8 על 8 משבצות. הוא מבין רק כמה פקודות קצרות, ואתם כותבים לו תוכנית. בעזרת לולאה ותנאי התוכנית נהיית קצרה וחכמה. במעבדה בונים תוכנית, מריצים אותה צעד אחרי צעד ומנבאים איפה הרובוט ייעצר.
כל משבצת בלוח מסומנת בשני מספרים: קודם העמודה, אחר כך השורה. (3, 2) היא עמודה 3 ושורה 2. בדיוק כמו במערכת צירים, ואם תרצו לחזור על זה יש דף על מערכת הצירים במתמטיקה.
צעד: הרובוט זז משבצת אחת קדימה, לכיוון שאליו הוא פונה.
פנה ימינה, פנה שמאלה: הרובוט מסתובב במקום. הוא לא זז.
ימין ושמאל הם של הרובוט, לא שלכם. אם הרובוט פונה למטה, הימין שלו הוא השמאל שלכם.
במקום לכתוב "צעד" חמש פעמים כותבים:
כל מה שבתוך הסוגריים קורה שוב ושוב.
הרובוט יכול לבדוק אם יש קיר ממש לפניו, ולהחליט. גם קצה הלוח נחשב קיר.
לולאה עם תנאי בפנים היא תוכנית שמסתדרת לבד.
בחרו שלב, בנו תוכנית בכפתורים והריצו. המטרה: לאסוף את כל היהלומים בלי להיתקע בקיר. השורה שרצה עכשיו מסומנת בצהוב.
לפני שאתם מריצים, חשבו: באיזו משבצת הרובוט ייעצר? כתבו עמודה ושורה ובדקו.
נסו את אלה:
"פנה ימינה" הוא ימין של הרובוט. כשהוא פונה למטה, ימינה שלו זה שמאלה על המסך. טריק: סובבו את הראש, או את הטלפון, כך שתסתכלו לאותו כיוון כמו הרובוט.
מעמודה 1 לעמודה 4 צריך 3 צעדים, לא 4. המשבצת שהרובוט עומד עליה לא נספרת.
אם שוכחים לסגור את הלולאה, גם הפקודות שאחריה ייכנסו לתוכה ויחזרו שוב ושוב. בדקו איפה כל { נסגר.
(2, 5) ו-(5, 2) הן משבצות שונות. המספר הראשון הוא תמיד העמודה.
הרובוט מתחיל ב-(1, 1) ופונה ימינה על המסך. איפה הוא ייעצר אחרי התוכנית הזאת?
כי הרעיונות הגדולים של תכנות הם סדר, לולאה ותנאי, ועל הלוח רואים אותם בעיניים. כשהרובוט נתקע, מבינים מיד מה השתבש. אחר כך, בשפת תכנות, אותם רעיונות פשוט נכתבים במילים אחרות.
זה קורה כמעט לכולם. בקשו מהילד לעמוד ולהסתובב לאותו כיוון כמו הרובוט, או לסובב את הטלפון. אפשר גם להריץ במעבדה צעד אחד בכל פעם ולבדוק לאן החץ פונה אחרי כל סיבוב.
קודם כל היא עושה את מה שצריך: כל היהלומים נאספים והרובוט לא נתקע. אחרי זה בודקים אם אפשר לקצר אותה בעזרת לולאה, ואם היא תעבוד גם אם הקיר יזוז. נסו במעבדה.