Coding for KidsCoding for Kids
שלבים יצירתייםאתגריםמדריך למורים
הצבע על תכונות
קורס פיתוח מתקדם בפייתון
פרק
>
רמה

אסינכרוני/חכה
סקירה אסינכרונית

מטרה

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

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

ראשית, לך לסמל ה־X הכהה שאין לו שטיח שמולי נייר. רשומה זו מכילה מידע על כמות המוצר שצריך להיות מופק וכן הערות לגבי אילו פירות היין הושרו. השתמש בפונקציה read() כדי לבדוק את המקסימום ולרשום מהם ערכי פירות היין ולאחסן אותם במשתנה בשם quota.

ברגע שתבין מה נדרש, לך לסמני ה־X הבהירים ופנה אל התיבות כדי לבדוק כמה מהמוצר מוכן לעיבוד. השתמש בפונקציה read() על כל אחת מהן כדי לאמת את תכולת הפריטים שהוכנו. צור משתנה בשם wine_berries וסכם את הכמויות שקראת משני סמני ה־X.

כמות המוצר המוגמר לא תספיק לעמידה במקסימום, לכן לך לסמל ה־X הזהוב בפינה הימנית התחתונה ופנה אל השקים. השתמש בפונקציה collect() כדי לאסוף פירות מהשקים והמשך לעבור לסמני ה־X הכהים שמעל השטיחים.

ישנם ארבע (4) סירים שבהם משרים פירות לשימוש ביין. במסמך ניתן לראות אילו סירים מוכנים לאיסוף ואילו סירים זקוקים להשריית פירות. השתמש בפונקציה question() כדי לבדוק אם ברצונך לאסוף את פירות היין שהושרו או להשרות פירות בסיר. על השטיחים הירוקים והצהובים עם סמני ה־X הכהים יש לאסוף את הפירות, ועל השטיחים הסגולים והכחולים עם סמני ה־X הכהים יש למקם את הפירות.

async def soaking_pot(): answer = await player.question("Collect berries instead of soaking them?") if answer: player.collect("wine berries") else: player.place("berries")

ברגע שהושגו פירות היין, לך לסמל ה־X הזהוב בצד השמאלי שליד חביות הפירות והשתמש בפונקציה place() כדי להוסיף את "wine berries" שאספת. במשתנה שיצרת, wine_berries, הוסף 100 פאונד של מוצר, כלומר 50 עבור כל אחד מהמוצרים שאספת קודם. הדבר נעשה כך: wine_berries+=100

עבור לסמני ה־X הכהים עם השטיחים האדומים והכתומים. בסמל ה־X של השטיח האדום, השתמש בפונקציה write() והזן את כמות wine_berries הזמינה עד כה כך: player.write("There are %d pounds of product finished" % (wine_berries))

על סימן ה־X של השטיח הכתום, השתמש בפונקציה write() כדי לרשום את כמות המוצר שטרם הושלם. על מנת להשלים את הרמה, הפחת את wine_berries מ־quota תוך כדי כתיבה כדי לקבוע את הפריטים הנותרים, כך: player.write("There are %d pounds of product Remaining" % (quota-wine_berries))

ספר קוד