Coding for KidsCoding for Kids
Creatieve LevelsUitdagingenLerarengids
Stem op functies
Gevorderde Python-ontwikkelingscursus
Hoofdstuk
>
Niveau

Geavanceerde Lijsten
Een matrix wijzigen

Doelstelling

Verzamel en berg de wijnflessen op in het wijnrek door een Matrix te wijzigen.

Er zijn meerdere wijnflessen die in een wijnrek moeten worden opgeborgen. Er zitten echter al enkele flessen in het rek, en de items moeten op specifieke locaties worden geplaatst om opgeruimd te worden.

De flessen in het rek worden opgeslagen in een Matrix, een type Geneste Lijst. Matrixen zijn geneste lijsten waarbij elk item een lijst is met exact dezelfde lengte, wat een soort rooster creëert waarbij de items worden verdeeld in rijen en kolommen. Bijvoorbeeld:

matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [0, 0, 0] ]

In de bovenstaande code hebben we een Matrix met drie (3) kolommen en vier (4) rijen. Om toegang te krijgen tot een item in de Matrix, hoef je alleen maar de rij en de kolom op te geven waar het item zich bevindt, vergelijkbaar met hoe je items in een standaard lijst benadert, maar dan met twee indices in plaats van één. Bijvoorbeeld, gebaseerd op de bovenstaande code: matrix[0][0] = 1 , matrix[0][1] = 2 , matrix[1][0] = 4 , enz.

Er zijn vier (4) verschillende soorten wijnflessen in de kelder, namelijk: "purple bottle" , "green bottle" , "blue bottle" , "yellow bottle". Verzamel alle flessen op het veld zodat ze in het rek kunnen worden opgeborgen.

Daarnaast zijn er flessen opgeslagen in kratten. Loop naar de lichte X-markeringen en gebruik de collect() functie terwijl je naar de kratten kijkt om de flessen op te pakken. Er zijn twee constanten die de inhoud van de kratten bevatten: lower_crate en upper_crate. Hun namen komen overeen met hun positie op de kaart en worden als volgt gebruikt: player.collect(lower_crate).

Zodra alle flessen zijn verzameld, plaats je het aantal flessen dat je per type hebt verzameld in variabelen, namelijk: purple_bottle , green_bottle , blue_bottle , yellow_bottle. Vervolgens loop je naar de gouden X-markering en richt je je op het wijnrek.

In de code-editor wordt een Matrix genaamd wine_rack weergegeven. Zoek de items in de Matrix die de waarde 0 hebben en voeg de flessen toe die je hebt verzameld. De Matrix heeft in elke rij de kleur van de fles aangegeven die moet worden toegevoegd. Om een nieuw item aan de Matrix toe te voegen, typ je de rij en kolom waarin je de waarde wilt plaatsen, bijvoorbeeld: wine_rack[0][1] = purple_bottle.

Vergeet niet dat alle posities in lijsten beginnen bij 0. Zodra alle items aan de Matrix zijn toegevoegd en deze compleet is, gebruik je de place() functie gevolgd door de speak() functie op de gouden X-markering met de naam van de Matrix om de waarde te controleren en het level te voltooien, als volgt: player.place(wine_rack), player.speak(wine_rack).

Codeboek