Variabler

En variabel är en plats i minnet av din dator som man ger ett namn, och som innehåller ett värde. Värdet i variabeln kan ändra på sig medans ditt program körs, och den kan bli använd på flera platser i koden.

Som en låda

Variabler jämförs ibland med lådor. Tänk dig en flyttkartong som man använder för sin julpynt. På lådans utsidan skriver man ”julpynt” så att man vet van den innehåller. I kartongen kanske du lägger 10 stycken julkullor, och ställer undan den på vinden. När det är jul går du upp och hämtar lådan ”julpynt”. Innehållet använder du för att dekorera julgranen, men du råkar tappa en kula i golvet. Så när det blir dags att plocka undan blir innehållet av lådan ändrat till bara 9 stycken. På liknande sätt har en variabel en namn som beskriver vad den är till för, och ett innehåll som kan användas och förändras.

Namngivning

Det namnet man ger till sin variabel spelar ingen roll för datorns skull. Så det är bra att använda ett namn som beskriver vad variabeln innehåller. Till exempel kan man ha en variabel poäng som innehåller hur mycket poäng man har samlat i ett spel. Namnet får bestå av flera bokstäver och siffror. I JavaScript läge får den inte innehålla mellanslag. Om man ändå vill ha flera ord i namnet kan man vara lite kreativt med till exempel stora bokstäver eller understreck: detSlumpadeTalet eller det_slumpade_talet.

När behövs det?

Variabler används när en bit av information ska användas vid ett senare moment i programmet än där den skapas, ofta handlar det om något som ska användas mer än en gång. En viktig egenskap är också att informationen kan ändras medans programmet körs.

Stegräknare

Du kan också titta på ett Youtube klip av MakerMovies.se om hur man bygger en stegräknare och använder en variabel.

För att hålla reda på informationen hur många steg vi har gått behöver vi en variabel. Gå in till kategorin Variabler och tryck högst upp på den gråa knappen ”Skapa en variabel” och fyll i namnet. Eftersom den ska räkna upp antal steg vi har tagit kallar vi den för antal_steg.

Innan vi kan använda variabeln ska vi se till att den innehåller något. Dra ut ”sätt namnlös till 0”-blocket till ”vid start” och byt ”namnlös” till namnet på variabeln du precis har skapat. Nu är vi säker att den alltid börjar på 0 när programmet startar. (Om jag är ärlig: i blockläge görs detta i bakgrunden även om man inte lägger ut detta block. Men det är bra att vänja sig med att göra det innan man byter till textprogrammering.) Nu vill vi att varje gång vi tar ett steg, och micro:bit skakas, antal_steg ökas med 1. Då drar vi ut ”när skaka”-blocket från Input och i den lägger vi ”ändra med 1” från Variabler. Se till att ändra det till antal_steg variabeln. Nu håller vår micro:bit koll på hur många steg vi tar. Men.. vi ser ingenting. Det sista vi ska lägga till är att visa upp värdet som finns i vår variabel. För att få det synligt hela tiden bygger vi det i ”för alltid”-blocket. Dra in ett ”visa siffra”-block. Istället för en 0 ska vi visa upp värdet som finns i antal_steg. Den hittar vi som ett block i Variabler kategorin.

let antal_steg = 0
antal_steg = 0
input.onGesture(Gesture.Shake, () => {
 antal_steg += 1
})
basic.forever(() => {
 basic.showNumber(antal_steg)
})

Länk till koden.

Olika typer

Vår stegräknare har en variabel som innehåller en siffra. Men det finns också andra typer av information som kan sparas i en variabel. Detta kallas för datatyp. Strängar (textbitar) är en annan typ. Till exempel kan man ha en variabel som heter användernamn och innehåller texten "andersson007". En annan datatyp möter man när man håller på med om-satser och villkor. Den heter boolesk (boolean) och innehåller antingen sant eller falskt. Listor är ännu en annan typ.

Senast ändrad 2018-03-21