Coding for KidsCoding for Kids
クリエイティブレベル挑戦教師ガイド
機能に投票
上級Python開発コース
チャプター
>
レベル

非同期/待機
非同期レビュー

目的

非同期関数を使用して、割り当ての確認とワイン用ベリーの漬け込み完了により、ワインボトルの生産を記録する。

ワインボトルの生産は、地下室が在庫として十分なボトルを生産できるようにするために必要です。そのため、すべてが発酵プロセスに適した状態に処理され、ワインへと変換されるよう、ワイン用ベリーを漬け込む必要があります。

まず、紙の前にカーペットがない暗いXマークの場所へ歩いて行きます。このメモには、生産すべき製品の割り当てに関する情報と、どのベリーが漬け込まれたかに関する記録が含まれています。割り当てを確認し、ワイン用ベリーの値を記録して、変数名「quota」に保存するために、read() 関数を利用してください。

必要な内容が判明したら、明るいXマークの場所へ歩いて行き、クレートに向かって処理の準備が整った製品の量を確認します。両方のXマークに対して read() 関数を使い、準備完了のアイテム内容を確認してください。その後、wine_berries という名前の変数を作成し、両方のXマークから読み取った数量を合計してください。

仕上がった製品の量は割り当てを満たすには十分でないため、右下隅の金色のXマークへ歩み、袋に向かってください。袋からベリーを収集するために collect() 関数を使用し、その後、カーペット上の暗いXマークの場所へ移動してください。

ワイン用に使用するベリーを漬け込むための4つのポットがあり、ドキュメントにはどのポットが収集可能か、またどのポットにベリーを漬け込む必要があるかが記されています。question() 関数を使用して、漬け込まれたワイン用ベリーを収集するか、ポットでベリーを漬け込むかを確認してください。緑と黄色のカーペットにあり暗いXマークの場所ではベリーを収集し、紫と青のカーペットにあり暗いXマークの場所ではベリーを配置する必要があります。

製品を取得するために必要な question() 関数はコードエディタに記述され、soaking_pot() という名前で定義されています :

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 に、これまでに収集した製品それぞれ50ポンドずつ合計100ポンドを加えます。これは wine_berries+=100 のように実行します。

赤とオレンジのカーペットが敷かれた暗いXマークの場所へ移動し、赤いカーペットのXマークでは、これまでに蓄積された wine_berries の量を write() 関数を使用して記録してください。記録方法は次のようになります: player.write("There are %d pounds of product finished" % (wine_berries))

オレンジのカーペットのXマークでは、まだ仕上がっていない製品の量を書き留めるために write() 関数を使用してください。レベルを完了するため、quota から wine_berries を差し引いて残りの製品量を計算し、以下のように記録します: player.write("There are %d pounds of product Remaining" % (quota-wine_berries))

コードブック