יום רביעי, 25 בנובמבר 2020

מיקרו:ביט שיעור מספר 8 - לולאות ותנאים (#8 Micro:bit)

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


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

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

לאחר כל הדלקה/ כיבוי - המיקרו:ביט יגדיר מחדש מהו הטור והשורה שהוא עובד איתם. 


תוכלו לראות שבתחילת התכנית מוגדרים השורה והטור ל 0.
 


בהמשך - תוך כדי הלולאות - השורה הופכת להיות "שורה+1" (כלומר, השורה מוגדרת כ 1, בסיבוב הבא היא תוגדר כ 2 וכו'). 


כאשר השורה תוגדר כ 5 - הלולאה תפסיק לתפקד ואז יגיע הזמן להגדיר את הטור מחדש כ "טור+1". כמובן שהשורה תתאפס ל 0 מחדש כדי להתחיל לעבוד על המיקום 0 בשורה אבל הפעם בטור הבא. 


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

מה התוצאה של כל זה? תוכלו לראות את התוצאה בסרטון: 


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

בהצלחה!! 


אין תגובות:

הוסף רשומת תגובה

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

נשמח לשמוע!

(התגובה תפורסם בהקדם בכפוף לאישור מערכת מייקינג)