LABB 2: KODA GDSCRIPT
Ht1-2
SYFTE:
Alla grunder i programmering som övning men som ockås som behövs senare.
##UPPSÄTTNING
- Skapa ett nytt projekt i Godot.
- Spara projektet på en plats på datorn där du hittar koden. Du behöver senare kunna komprimera mappen för att lämna in.
- Skapa en Scen mend en Node2D och spara scenen
- Skapa ett Script genom att klicka på Script-filken och köra File/New Script
- Skapa en Sigleton/Autoload-fil t.ex. med namnet auto.gd och registrera den som Auto. Länk för detta på DOC-sidan och video på VIDEO-sidan.
Vinsten med detta är att alla funktioner och variabler som finns i Auto kan kommas åt överallt med Auto.
##RENSA DATAT
Skriv av följande data i auto.gd
Skapa en funktion som heter numbers_only
. Den ska:
- Ta en array som parameter eller argument - t.ex. med namnet
in_array
. - Skapa en lokal tom array - t.ex.
var numbers
- loopa över
in_array
och bara kopiera tal tillnumbers
- Använd array-metoden
append
för tillägg. - Tips: Vi kan kolla en variables datatyp med is-operatorn. Läs om is-operatorn under variabler i DOCS-sidorna.
- Använd array-metoden
- returnera
numbers
Testa koden genom att skapa en _ready()
-funktion i auto.gd och anropa numbers_only
med data och printa resultatet.
##SUMMERA
Skapa nu en funktion sum_numbers
som:
- tar en Array som parameter
- summerar talen i arrayen utan att använda någon annan funktion, dvs använder en egen for-loop och egna variabler.
- Tips: operatorn +=
- returnera summan
Testa koden genom att i _ready()
-funktionen i auto.gd anropa sum_numbers
med värdet av data efter att det körts genom numbers_only
och printa resultatet.
##MEDELVÄRDE
Skapa nu funktionen, average
som räknar ut medelvärdet för alla tal som:
- tar en array som parameter.
- använder funktionen
numbers_only
för att få en ren array med bara tal - använder
sum_numbers
för att räkna ut summan - använder array-funktionen
size()
för att ta reda på hur många element det finns i den rena tal-arrayen vi fick från anropet tillnumbers_only
- returnerar medelvärdet
##DATAANLYS
Nu ska vi göra en lite störra uppgift. Vi ska sortera och hitta data i en lite mer omfattande datamängd.
Nu får ni tänka lite själv vilka steg som kärvs, funktioner och hur man anropar för att genomföra uppgiften i auto.gd. Men tanken är fortfarande att processen startas via ett anrop i ready
Ladda ner filen skolangd.txt och lägg in i projektet.
Vi läser in datat med FilAcess och använder str_to_var
som gör om text till en datastruktur. Den datastruklturen blir då en Array fylld med många Dictionary-objekt. Bild för koden att läsa och skriva till och från Fil finns nedan.
Datat innehåller en databas med längder, skostorlekar och födelseår. Öppna filen för att se hur den ser ut.
Uppgiften:
- Söka fram den största skostorleken
- Räkna ut medellängd på individer med denna skostorlek
För att hitta datat behöver vi dela upp problemet.
- Första steget är att identifiera största skostorleken.
- Andra steget är att kopiera alla längder som tillhör individer med denna skostorleken till en egen Array
- Tredje steget är att räkna ut medelvädet för längderna och printa resultatet
Om man gör dessa steg en i taget och inte försöker göra allt samtidigt blir det:
- Mycket enklare
- Vi kan printa resultat på vägen och veta att vi är på rätt väg.
- Lättare att ändra ett steg senare.
##REDOVISNING
För att bli godkänd på labben ska ni visa att ni genomfört stegen och visa att ni förstår koden. Labben visas upp för assistent och lämnas in på inlämningssidan
Sidansvarig: infomaster
Senast uppdaterad: 2024-09-24