מירי
כיתה ו · חשיבה ממוחשבת

רובוט על לוח משבצות כותבים תוכנית ורואים אותה רצה

רובוט עומד על לוח של 8 על 8 משבצות. הוא מבין רק כמה פקודות קצרות, ואתם כותבים לו תוכנית. בעזרת לולאה ותנאי התוכנית נהיית קצרה וחכמה. במעבדה בונים תוכנית, מריצים אותה צעד אחרי צעד ומנבאים איפה הרובוט ייעצר.

1

הרעיון

כל משבצת בלוח מסומנת בשני מספרים: קודם העמודה, אחר כך השורה. (3, 2) היא עמודה 3 ושורה 2. בדיוק כמו במערכת צירים, ואם תרצו לחזור על זה יש דף על מערכת הצירים במתמטיקה.

שלוש פקודות פשוטות

צעד: הרובוט זז משבצת אחת קדימה, לכיוון שאליו הוא פונה.

פנה ימינה, פנה שמאלה: הרובוט מסתובב במקום. הוא לא זז.

ימין ושמאל הם של הרובוט, לא שלכם. אם הרובוט פונה למטה, הימין שלו הוא השמאל שלכם.

לולאה: חזרו N פעמים

במקום לכתוב "צעד" חמש פעמים כותבים:

חזרו 5 {
צעד
}

כל מה שבתוך הסוגריים קורה שוב ושוב.

תנאי: אם... אחרת...

הרובוט יכול לבדוק אם יש קיר ממש לפניו, ולהחליט. גם קצה הלוח נחשב קיר.

אם יש קיר לפניך {
פנה שמאלה
} אחרת {
צעד
}

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

זה מה שמתכנתים עושים: כותבים הוראות מדויקות, מריצים, רואים מה קרה ומתקנים. אם הקודם, לולאות בחידות, עוד לא מוכר לכם, כדאי להתחיל שם.
2

מעבדה: כותבים תוכנית לרובוט

בחרו שלב, בנו תוכנית בכפתורים והריצו. המטרה: לאסוף את כל היהלומים בלי להיתקע בקיר. השורה שרצה עכשיו מסומנת בצהוב.

נבאו קודם, ואז הריצו

לפני שאתם מריצים, חשבו: באיזו משבצת הרובוט ייעצר? כתבו עמודה ושורה ובדקו.

עמודהשורה

נסו את אלה:

3

טעויות שכולם עושים

ימין של מי?

"פנה ימינה" הוא ימין של הרובוט. כשהוא פונה למטה, ימינה שלו זה שמאלה על המסך. טריק: סובבו את הראש, או את הטלפון, כך שתסתכלו לאותו כיוון כמו הרובוט.

סופרים צעדים, לא משבצות

מעמודה 1 לעמודה 4 צריך 3 צעדים, לא 4. המשבצת שהרובוט עומד עליה לא נספרת.

הסוגר שנשכח

אם שוכחים לסגור את הלולאה, גם הפקודות שאחריה ייכנסו לתוכה ויחזרו שוב ושוב. בדקו איפה כל { נסגר.

קודם עמודה

(2, 5) ו-(5, 2) הן משבצות שונות. המספר הראשון הוא תמיד העמודה.

4

דוגמה פתורה, צעד אחרי צעד

הרובוט מתחיל ב-(1, 1) ופונה ימינה על המסך. איפה הוא ייעצר אחרי התוכנית הזאת?

5

תרגול

6

שאלות שכולם שואלים

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

כי הרעיונות הגדולים של תכנות הם סדר, לולאה ותנאי, ועל הלוח רואים אותם בעיניים. כשהרובוט נתקע, מבינים מיד מה השתבש. אחר כך, בשפת תכנות, אותם רעיונות פשוט נכתבים במילים אחרות.

הילד מתבלבל בין ימין לשמאל של הרובוט. מה עושים?

זה קורה כמעט לכולם. בקשו מהילד לעמוד ולהסתובב לאותו כיוון כמו הרובוט, או לסובב את הטלפון. אפשר גם להריץ במעבדה צעד אחד בכל פעם ולבדוק לאן החץ פונה אחרי כל סיבוב.

איך יודעים שתוכנית טובה?

קודם כל היא עושה את מה שצריך: כל היהלומים נאספים והרובוט לא נתקע. אחרי זה בודקים אם אפשר לקצר אותה בעזרת לולאה, ואם היא תעבוד גם אם הקיר יזוז. נסו במעבדה.