Använda Switch Blocks för att övergå från block till textbaserad kodning i VEXcode GO

Switch innehåller välbekanta element från blockbaserad programmering och integrerar textrutor där textkommandon kan skrivas.

Obs: Switchblock är endast kompatibla medPython.


Switch ger eleverna en naturlig brygga från block till textbaserad kodning. Allt eftersom eleverna blir bekanta med logiken och sekvenseringen av kommandon kan de börja konvertera ett projekt ett block i taget. 

Detta gör det möjligt för eleverna att fortsätta arbeta med logikflödet i ett blockbaserat program där de fysiskt kan se saker som hur en loop lindas runt andra block, samtidigt som de själva börjar experimentera med textkommandon. När blocken har konverterats till Switch kan eleverna enkelt ändra parametrar och börja förstå syntaxen för textkommandot. Det här avsnittet går igenom en students användning av Switch för att förklara hur du kan använda dessa block i ett VEXcode-projekt.

Konvertera block till switch

Obs: För att komma igång med kodning med Switch Blocks måste du ha en dator (inte en mobil enhet).

Konvertera ett enskilt block till en switch

Kör framåt i 100 mm block med kontextmenyn öppen. Den innehåller duplicera, inaktivera block, ta bort block, blockhjälp, konvertera block till växelblock och läsa block

Högerklicka på blocket du vill konvertera till ett växelblock.

Kör framåt i 100 mm block med kontextmenyn öppen. Den innehåller funktioner för att duplicera, inaktivera block, ta bort block, blockhjälp, konvertera block till växlingsblock och läsa block. Konverteringsblocket till växlingsblocket är markerat.

Välj Konvertera block till växelblock.

drivetrain.drive_for framåt 100 mm i brytarblock

Blocket kommer nu att växlas till ett växlingsblock med samma parametrar.

VEXcode GO toppmeny med ångra-knappen markerad.

För att återställa ett växlingsblock till ett block efter konvertering, välj knappenÅngra.

Konvertera flera block till Switch

VEXcode GO med kontextmenyn öppen på det första blocket, kör framåt i 100 mm.

Högerklicka på toppen av stapeln som du vill konvertera till ett switchblock.

Samma bild som ovan, markerade blocket "konvertera stacken till switch"

VäljKonvertera stack till switchblock.

VEXcode GO, när den startas, drivetrain.drive_for framåt, 100, mm. drivetrain.turn_for höger 90 grader och console.print VEXcode

Blocket du högerklickade på och alla block under det kommer att konverteras till ett växelblock.

Konvertera block inuti ett C-block till switch

Du kan konvertera ett C-block och allt dess innehåll till Switch med ett enda klick.

AC-blocket med kontextmenyn öppen

Högerklicka på C-blocket du vill konvertera.

Samma bild som ovan, med markerat konvertera C-block och dess innehåll till Switch-block

VäljKonvertera C-block och dess innehåll till växelblock.

VEXcode GO Python, när den startas, för repeat_count inom range(4), då är de tre raderna nedan drivetrain.drive_for(FORWARD, 100, MM), drivetrain.turn_for(RIGHT, 90), och sedan wait(5, MSEC)

Allt innehåll i C-blocket kommer att konverteras till ett enda Switch-block.

Använd ett switchblock

Lägg till ett växlingsblock från verktygslådan

Klicka och dra ett växlingsblock från verktygslådan.

Skriv in ett växlingsblock

Markera textfältet för växlingsblocket och ange sedan önskat kommando.

Kopiera och klistra in text inuti ett växlingsblock

Klicka och dra för att markera text i växlingsblocket. Högerklicka och välj Kopiera. Klicka sedan inuti ett annat Switch Block. Högerklicka slutligen och välj Klistra in för att överföra texten.

Ytterligare brytarblock

Växelblock följer samma formkonventioner som andra block. Tabellen här visar jämförelsen mellan blockformen, dess betydelse och växelblock av samma typ.

Blockform Beskrivning Blockexempel Exempel på brytare
Hattblock Börja med en stapel med block och forma dem för att fästa block under dem. definiera utskriftsnamnsblock. def print_name() i ett hat switch-block
Stapla block Utför huvudkommandon. De är formade för att fästas ovanför eller under andra stapelblock. kör framåt för 100 mm block drivetrain.drive_for(FRAMÅT, 100, MM) i Switch-blocket.
Booleska block Returnerar ett villkor som antingen sant eller falskt och passar in i alla block med hexagonala (sexsidiga) indata för andra block. stötfångarpressat block bumper.is_pressed() i ett Switch-block
Reporterblock Rapportera värden i form av siffror och passar in i valfria block med ovala indata för andra block. timer i sekunderblock timer.time(SEKUNDER) i Switch-blocket
C-block Loopa blocket/blocken inom dem eller kontrollera om ett villkor är sant eller falskt. De är formade för att fästa stapelblock ovanför, under eller inuti dem. för alltid blockera och om annars blockera  medan True-blocket är i ett C-format block. Om bumper.is_pressed() och annars: i ett E-format block

 

1Weintrop, David och Uri Wilensky. "Hur blockbaserade, textbaserade och hybrida block/text-modaliteter formar nybörjarprogrammeringspraxis."  Internationell tidskrift för barn-datorinteraktion 17 (2018): 83-92

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: