Nybörjarkodning med block
Kapitel
>
Nivå
Avancerade listor och datastrukturer
Loopa genom listor
Mål
Hämta alla material på fältet och kör inventering av alla insamlade föremål innan du lägger dem i specifika behållare.
En storm förstörde utposten vid bron och spred material överallt, jag är säker på att dessa material kan användas senare. Kör inventering på varje objekt du plockar upp och placera dem i förrådet på andra sidan bron.
Samla först alla spillror som spridits på fältet, dessa är: "branches", "boulders" och "planks". När du har samlat in alla föremålen, placera dem i en nästlad liststruktur (dictionary) med namnet materials och lägg in alla tre (3) materialnamn och mängder i den med hjälp av set dict value-blocket.
När allt är placerat inuti den nästlade liststrukturen, gå mot det ljusa X-märket och kör inventering på alla de material du har samlat med hjälp av for each in dictionary-blocket med funktionen speak. Detta speciella loopblock låter dig iterera över nästlade liststrukturer (dictionaries) genom att tillhandahålla två variabler: en för nyckeln (name) och en för värdet (number).
Använd for each in dictionary-blocket med variablerna name och number, samt dictionaryn materials. Inuti loopen, använd speak-blocket med ett text join-block för att kombinera "There were ", variabeln number, " ", variabeln name och " collected".
Efter att du har kört inventeringen, gå till de mörka X-märkena och placera de material du har samlat i den nästlade liststrukturen i behållare med hjälp av place-blocket. Använd get dict value-blocket för att hämta varje material, till exempel get dict value med materials och nyckeln "branches", och koppla sedan detta block till place-blocket. Det finns tre (3) mörka X-märken, i den vänstra behållaren placera "branches", i den mittersta behållaren placera "boulders" och i den högra behållaren placera "planks". Placera allt på rätt plats för att slutföra nivån.