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

קטגוריית לוגיקה: תנאים, השוואות וערכי אמת.
תנאי אם
חברו השוואה לשקע של אם, ואת הפעולה לפתח שלו. לדוגמה:
if drone.get_battery() < 20:
drone.land()זו דוגמת תכנות לסימולטור, ולא סף בטיחות לחומרה. לחיצה על גלגל השיניים של בלוק התנאי מאפשרת להוסיף אחרת ותנאי המשך. אין צורך לחפש בלוק נפרד לכל הסתעפות.
| רעיון | משמעות | פייתון |
|---|---|---|
| השוואה | שווה, שונה, קטן, גדול או שווה | a == b, a != b, a < b |
| וגם | שני התנאים נכונים | a and b |
| או | לפחות תנאי אחד נכון | a or b |
| לא | הופך אמת ושקר | not a |
| אמת / שקר | ערך לוגי קבוע | True, False |
| ללא ערך | אין ערך כרגע | None |
| בחירת ערך לפי תנאי | אחד משני ערכים | b if a else c |
בבלוקים סימן שוויון משווה; בפייתון השוואה היא ==. סימן = יחיד בפייתון שומר ערך במשתנה.

קטע תנאי: אם קריאת הסוללה קטנה מ־20, מבצעים נחיתה. סף הדוגמה אינו מחליף נוהל חומרה.
פעולות מתמטיות
| פעולה | שימוש | קוד לדוגמה |
|---|---|---|
| מספר | ערך מוקלד | 123 |
| חשבון | חיבור, חיסור, כפל, חילוק, חזקה | a + b, a ** b |
| פעולה על מספר | שורש, ערך מוחלט, שלילה ולוגריתם | math.sqrt(a), abs(a) |
| טריגונומטריה | סינוס, קוסינוס, טנגנס והפוכים | math.sin(a / 180.0 * math.pi) |
| קבוע | π וקבועים נוספים | math.pi |
| תכונת מספר | זוגי, אי־זוגי, ראשוני, שלם או סימן | a % 2 == 0 |
| עיגול | רגיל, למעלה או למטה | round(a) |
| חישוב ברשימה | סכום, קיצון, ממוצע, חציון ומדדים נוספים | sum(values) |
| שארית | מה נשאר אחרי חילוק | a % b |
| הגבלה לטווח | מונעת חריגה מהגבולות שנבחרו | min(max(a, low), high) |
| מספר שלם אקראי | ערך בטווח כולל הקצוות | random.randint(1, 3) |
| שבר אקראי | ערך בין 0 ל־1 | random.random() |
| זווית לנקודה | שימוש ב־atan2 | math.atan2(y, x) / math.pi * 180 |
הבלוקים הטריגונומטריים משתמשים במעלות. הקוד ממיר לרדיאנים עבור פונקציות פייתון.
דוגמאות לתכנון
הגרלת זמן המתנה יכולה לשנות מרחק בכל הרצה. שארית בחילוק ב־2 עוזרת להבחין בין חזרות זוגיות ואי־זוגיות. הגבלת ערך יכולה להשאיר זמן בטווח מתאים.
חישוב לא נכנס אוטומטית לכל שדה: שקע מקבל בלוק ערך; תפריט נפתח או מספר המוקלד על בלוק אינם בהכרח שקעים. למשל, תפריט המהירות של APEX אינו מקבל משתנה.
להמשך: משתנים ופונקציות.