דילוג לתוכן
UAVProg
שפהhe
בלוקים

בלוקים

לוגיקה ומתמטיקה

תנאים, השוואות וחישובים שבוחרים מה התוכנית תעשה.

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

קטגוריית לוגיקה: תנאים, השוואות וערכי אמת.

קטגוריית לוגיקה: תנאים, השוואות וערכי אמת.

תנאי אם

חברו השוואה לשקע של אם, ואת הפעולה לפתח שלו. לדוגמה:

נוצר מבלוקים
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, מבצעים נחיתה. סף הדוגמה אינו מחליף נוהל חומרה.

קטע תנאי: אם קריאת הסוללה קטנה מ־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 ל־1random.random()
זווית לנקודהשימוש ב־atan2math.atan2(y, x) / math.pi * 180

הבלוקים הטריגונומטריים משתמשים במעלות. הקוד ממיר לרדיאנים עבור פונקציות פייתון.

דוגמאות לתכנון

הגרלת זמן המתנה יכולה לשנות מרחק בכל הרצה. שארית בחילוק ב־2 עוזרת להבחין בין חזרות זוגיות ואי־זוגיות. הגבלת ערך יכולה להשאיר זמן בטווח מתאים.

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

להמשך: משתנים ופונקציות.