Lärplattform · Detalj
Tetris med matriser och rotationer
Detta byggeblock visar hur ett spelplan modelleras som en matris samt hur rörelse, rotation och kollision bearbetas algoritmiskt. Didaktiskt relevant är den stegvisa kopplingen mellan datstrukturen, tillståndsläggning och visuell implementering i ett tydligt spårbar applikationskontext.

Introduktion (Originalutdrag)
Didaktisk klassificering
Subjektivt måluppsättning
I centrum av detta modul är modelleringen av ett spelplan som en tvådimensionell lista. Det introducerar ett centralt informationsbegrepp: att representera ett diskret rutnät genom en matrisstruktur. På basis av detta beskrivs stenar som mindre matriser och deras position hanteras via koordinater. Lärare kopplar abstrakta datamodeller till en konkret visuell representation i spelet. Rotationen av former kräver ett strukturerat omarrangemang av matriselement och gör algoritmiska transformationer synliga. Kopplingen mellan modell och implementation framgår särskilt i att varje rörelse, kollision och radräkning direkt följer från den valda datstrukturen.
Kompetensutveckling
- Modellering av ett spelplan som en tvådimensionell lista med rad- och kolumnstruktur
- Representation av spelstenar som små matriser med upptagna och lediga celler
- Hantering av en aktiv sten genom formdata och koordinater i en datstrukturen
- Implementering av rörelselogik via händelsehantering och tillståndsförändringar i huvudloopen
- Utveckling av ett kollisionskontroll för kanter, golv och redan upptagna fält
- Användning av matrisrotation som en algoritmisk transformation av formdata
- Analys och bearbetning av helt rader som ett krav för poänglogik och hastighetsjustering
Didaktiskt tillägg i lektionen
- Stegvis övergång från datstrukturen till rörelseslag till utökad spellogik
- Tydlig sekvens av uppgifter med väl skilda delproblem inom ämnet
- Förstärkning av systematiskt tänkande genom återkommande undersökning av tillstånd och villkor
- Genomskinlig målriktning genom omedelbara synliga effekter av varje implementerad beslut
- Stöd för differentiering genom stegvisa utökningar på olika djupnivåer
Lärprocessens flöde
Spelets fältmatris och tangentbordskontroll
I början säkerställs spelets fält som en matris och kompletteras med grundläggande tangentbordskontroll. Uppgiften kombinerar representationen av rutnätet med initiala rörelseregler och introducerar logiken för när en sten kan falla igen eller måste genereras nytt. Detta skapar den funktionella basen för alla senare spelmekanismer.
- Didaktisk fokus: matrismodell och tillståndsbaserad kontroll
- Typisk utmaning: konsekvent testning av gränsvillkor under rörelser
Rotera Tetrominos som matriser
I det andra steget introduceras olika former och bearbetas som små matriser. Rotationen kräver ett målriktat omarrangemang av matrisens element och kopplas ihop med samma krocktest som rörelse. Detta gör tydligt att olika spelåtgärder bygger på gemensamma logiska regler.
- Didaktisk fokus: matristransformation och regelkonsekvens
- Typisk utmaning: giltig rotation utan att överskrida spelets fält
Ta bort rader, poäng och hastighet
Efterföljande utökning av spelets logik för att identifiera och ta bort helt rader. På basis av detta introduceras poäng, linjer och nivåer som ytterligare tillstånd från vilka en ändrad fallhastighet kan härledas. Detta steg kombinerar dataprocessering med ett tydligt regelutvecklingsarbete under spelets gång.
- Didaktisk fokus: utvärdering av matrisens tillstånd och framstegslogik
- Typisk utmaning: Korrekt borttagning och tillägg av rader i spelplanen
Helt spel
Det sista uppgiften syftar på en sammanfattande övervägande av ett komplett referensspel. I förgrunden står inte tillägg av ny kod, utan identifiering av tidigare utvecklade mekanismer inom ett enhetligt hela program. Detta reflekterar utvecklingen av kompetens och säkerställer den professionellt.
- Didaktisk fokus: Integration och reflektion av det övergripande sammanhanget
- Typisk utmaning: Att individuella komponenter i det övergripande systemet ska tilldelas säkert
Arbetsuppgift (utdrag)
- Modellera spelplanen som en matris och lägg till ett styrbart fallande rörelse för den aktiva stenen.
- Utvidga spelet med olika Tetrominos och rotation baserat på matriscalculeringar.
- Kontrollera därefter rörelser och rotationer genom enhetlig krocklogik.
- Implementera borttagning av helt rader, poäng, linjer och ökad hastighet.
Exempel (utdrag)
Följande utdrag är didaktiskt relevant eftersom det gör rotationen synlig som ett målrikt omordning av en matris, vilket framhäver ett centralt kärnkoncept i modulen.
| |
Tips för klassrummet
- För den övergripande sekvensen rekommenderas en uppdelning på minst två undervisningsfasers, eftersom modellering, rotation och utökad spellogik varje form av oberoende fokus.
- Differentiering kan uppnås genom djupet i krocklogiken, ytterligare former eller förbättrad nivåberäkning.
- För att säkerställa resultat är en jämförelse av använda datstrukturen och härledda regler för rörelser, rotationer och radborttagningar lämplig.
- Som tillägg erbjuds ytterligare Tetromino-varianter, ett förhandsvisningssystem för nästa sten eller extra spelstater.
- Innehållsmässigt kan detta modul länkas enkelt till ämnen som tvådimensionella datastrukturer, algoritmer för statuskontroll och programmering med händelsebaserad logik.
Den tydliga uppgiftsstruktur stöder klassrumsorganisationen och underlättar systematisk verifiering av resultat. Utökade uppgifter möjliggör korrekt differentiering vidare i kursens gång.
Begär ett demo-åtkomst och testa modulen i din egen kurskontext.