Blockkodning för nybörjare
Kapitel 6
>
Nivå 4
Mål
Rensa ut ogräs från passagen mellan byggnader med hjälp av inbäddade villkor i loopar.
Passagen mellan byggnaderna har ogräs som växer. Det är en bra idé att samla allt ogräs och tömma det. Det finns sätt att automatisera den här processen genom att använda villkor inuti loopar. Det finns flera block i editorn som är inaktiverade och som du kan aktivera för att fylla i luckorna.
Skapa en variabel med namnet bag och sätt den till 0 med hjälp av blocket set variable.

Använd en while-loop med ett villkor för att automatisera processen, lägg till ett block comparison inuti den. Ställ in comparison-blocket för att kontrollera om bag är mindre än 10 genom att sätta rullgardinsmenyn till >.

Inuti loopen, lägg till ett block move forward och dra och släpp blocket change variable från menyn Variables. Ställ in rullgardinsmenyn på bag och sifferbubblan till 1.

Genom att använda ett villkor i while-loopen fortsätter loopen så länge villkoret är sant. Varje loopcykel lägger till ett ogräs i väskan och loopen stoppar automatiskt när bag når tio (10).
Gå till den första mörka X-markeringen och vänd mot lådan; i de två lådorna som är placerade kommer vi att tömma det insamlade ogräset. Använd en for-loop med blocket place vid X-markeringarna. Antalet steg mellan varje behållare är dock ojämnt eftersom det finns ett mellanrum. Genom att använda inbäddade if-block inuti loopen kan du hoppa över viss kod när ett villkor är uppfyllt.
Använd ett for-loop-block med variabeln x från 0 till 2 med inkrement om 1. Inuti loopen, lägg in ett move forward-block och använd sedan ett if-block som är uppsatt med ett comparison-block. Inuti comparison-blocket anger du den första sloten till x, rullgardinsmenyn till inte lika med (≠) och det numeriska värdet till 1.

Aktivera de inaktiverade blocken inuti if-blocket och fyll i operators-blocket i place-blocket för att fastställa mängden ogräs som ska deponeras i behållarna. Vi behöver lägga hälften av ogräset som samlats in och lagrats i variabeln bag i varje behållare. För att göra detta behöver vi infoga variabelblocket bag från menyn Variables i den första sloten i operators-blocket, ställa rullgardinsmenyn på % och ange 2 i sifferbubblan.

Endast när x inte är lika med 1 (dvs när x är 0 eller 2) kommer koden för att svänga höger, lägga ogräs och svänga vänster att köras. På så sätt hoppar du över den mellersta iterationen (när x är 1) för att undvika mellanrummet mellan behållarna.
När du har samlat in och placerat ogräset på rätt plats, nå utgången markerad med en stjärna för att slutföra nivån.