Problem

Detta ramverk bygger vidare på 003 | Ta dig runt hindret, så läs det inlägget först för att få grunden. Här bygger vi vidare genom att Bee-Bot ska starta från sin startpunkt, ta sig runt hindret och sedan avsluta där den startade. Därefter vill vi komma fram till en algoritm som skulle kunna användas oavsett hur långt det är fram till hindret och hur brett det är. Går det ens?

Material

Bee-Bot, penna, papper och dina bästa läroplansglasögon.

Exempelproblem

I vårt exempel har vi en startlinje (en tejpbit) och ett hinder ca 1,5 m därifrån som Bee-Bot ska ta sig runt för att avsluta där den startade i samma position. Eleverna får inte veta hur långt det är till hindret. De får heller inte veta hur långt en Bee-Bot rör sig på ett steg. De får heller inte veta något mer än att de måste lösa problemet och göra det teoretiskt innan de får prova praktiskt. Givetvis får de testa exempelvis hur långt en Bee-Bot går på ett steg. Tanken är att de ska komma fram till en möjlig lösning på problemet innan de programmerar sina Bee-Bots. Jobba i grupper och diskutera tillsammans.

När eleverna har hittat en lösning vill vi att de försöker komma fram till en generell algoritm, som de skulle kunna använda oavsett hur långt det är till hindret och hur brett hindret är.

Bryt ned problemet

Låt eleverna diskutera och komma på vad de behöver för att kunna lösa uppgiften. Hjälp dem att bryta ned problemet i mindre delar.

Hur långt är det till hindret? Hur ska vi ta reda på det? Vilka pedagogiska hjälpmedel behöver vi? 
Låt eleverna diskutera och komma fram till lösningar. Kan vi använda annat än måttband eller linjal? Kan vi lösa det genom att uppskatta? Eller genom att vi vet hur långa eleverna är? Eller skapa egna måttband med penna och papper?

Hur långt rör sig en Bee-Bot på ett steg?
Hur kan vi lösa detta? Och på samma sätt som ovan, behöver vi använda måttband eller linjal, eller finns det andra alternativ?

Vilken väg ska Bee-Bot ta för att ta sig runt hindret?
Kan vi bryta ned färdvägen i mindre delar också? Räcker det med att vi tar oss fram till hindret, eller måste vi ta oss förbi också? Ser vi något mönster eller något som upprepar sig?

Algoritm

Nu när eleverna har kommit fram till en algoritm och testat koden i verkligheten är det dags att fundera på om det går att få fram en algoritm av detta som inte är bunden av att de vet avstånden? Diskutera och jämför allas lösningar.

Lösningsexempel

  1. Jag har tagit reda på att Bee-Bot går 15 cm på ett steg. Dessutom har jag mätt upp att sträckan för att ta sig fram till, och lite förbi hindret, är 1,5 m. För att vara på den säkra sidan har jag mätt upp att jag måste färdas 45 cm för att lyckas ta mig förbi på bredden.
  2. Nu skissar jag på en möjlig färdväg för Bee-Bot.
  3. Nu kan jag enkelt räkna ut hur många steg Bee-Bot ska gå och kan därför börja skriva på min algoritm. Därefter kan jag programmera Bee-Bot och testa att det fungerar.
  4. Jag putsar lite på koden, för att göra den så tydlig som möjligt. Här hittar jag även en del mönster.
  5. Om jag vill få fram en möjlig lösning på detta problem som skulle funka oavsett längd och bredd till hindret, så tänker jag att vi byter ut de fasta siffrorna som anger längd mot x och y. Det är ju de två variabler som jag skulle behöva justera om ett liknande problem dyker upp.