Skip to content
Informatica · Klas 4 VWO

Ideeën voor actief leren

Lijsten en Arrays

Actief leren werkt hier omdat leerlingen door directe ervaring ontdekken hoe lijsten en arrays efficiënter werken dan losse variabelen. Tijdens het bouwen en manipuleren van deze structuren zien ze zelf hoe herhaling en indexgebruik tijd en moeite besparen, wat abstracte concepten tastbaar maakt.

SLO Kerndoelen en EindtermenSLO: Voortgezet - DatastructurenSLO: Voortgezet - Programmeren
25–45 minDuo's → Hele klas4 activiteiten

Activiteit 01

Projectonderwijs30 min · Duo's

Paired Programming: Lijst Bouwen

Laat paren een lijst maken met namen van klasgenoten, voeg elementen toe en verwijder ze via loops. Test toegang met indexen en print resultaten. Sluit af met een eenvoudige zoekfunctie.

Analyseer hoe lijsten en arrays de efficiëntie van data-opslag en -toegang verbeteren.

FacilitatietipLaat leerlingen tijdens Paired Programming: Lijst Bouwen eerst de structuur van een lijst handmatig opschrijven voordat ze deze coderen, om het verschil tussen oneffen en uniforme toegang te zien.

Waar je op moet lettenGeef leerlingen een klein codefragment waarin een array wordt gebruikt om temperaturen op te slaan. Vraag hen om de temperatuur van de derde dag (index 2) te berekenen en op te schrijven, en om een zin te schrijven die uitlegt waarom een array hier efficiënter is dan drie aparte variabelen.

ToepassenAnalyserenEvaluerenCreërenZelfmanagementRelatievaardighedenBesluitvorming
Volledige les genereren

Activiteit 02

Projectonderwijs45 min · Kleine groepjes

Small Groups: Sorteer Algoritme

Groepen implementeren bubbelsorteren op een lijst getallen, vergelijken uitvoertijd met handmatig sorteren. Wissel code uit en debug elkaars versies. Visualiseer met printstatements.

Vergelijk de voordelen en beperkingen van lijsten ten opzichte van individuele variabelen.

FacilitatietipGeef de Small Groups: Sorteer Algoritme een lijst met 10 tot 15 getallen en beperk de tijd tot 10 minuten, zodat ze gefocust blijven op het algoritme in plaats van perfectie.

Waar je op moet lettenPresenteer een lijst met namen van leerlingen. Vraag leerlingen om een algoritme te beschrijven (in pseudocode of stappen) om te controleren of een specifieke naam in de lijst voorkomt. Bespreek vervolgens de tijdcomplexiteit van hun aanpak.

ToepassenAnalyserenEvaluerenCreërenZelfmanagementRelatievaardighedenBesluitvorming
Volledige les genereren

Activiteit 03

Projectonderwijs35 min · Hele klas

Whole Class: Filter Challenge

Presenteer een dataset als lijst, zoals temperaturen. Laat de klas collectief een filteralgoritme ontwerpen voor waarden boven een drempel. Stem af en implementeer in tweetallen.

Ontwerp een algoritme dat data in een lijst sorteert of filtert op basis van specifieke criteria.

FacilitatietipStart de Whole Class: Filter Challenge met een eenvoudig voorbeeld, zoals het filteren van woorden langer dan 5 letters, voordat je de complexiteit verhoogt met eigen lijsten van leerlingen.

Waar je op moet lettenLaat leerlingen in tweetallen een functie schrijven die een lijst met getallen sorteert met behulp van bubbelsorteren. Vervolgens beoordelen ze elkaars code op correctheid, leesbaarheid en het gebruik van indexen. Ze geven feedback op minimaal twee punten: één positieve opmerking en één suggestie voor verbetering.

ToepassenAnalyserenEvaluerenCreërenZelfmanagementRelatievaardighedenBesluitvorming
Volledige les genereren

Activiteit 04

Projectonderwijs25 min · Individueel

Individual: Array vs Lijst

Leerlingen coderen dezelfde taak met array en dynamische lijst, meten tijd voor 1000 elementen. Noteer verschillen in flexibiliteit en efficiëntie.

Analyseer hoe lijsten en arrays de efficiëntie van data-opslag en -toegang verbeteren.

FacilitatietipBij Individual: Array vs Lijst geef leerlingen een kant-en-klare tabel om hun code en resultaten te vergelijken, zodat ze patronen in efficiëntie en flexibiliteit duidelijk zien.

Waar je op moet lettenGeef leerlingen een klein codefragment waarin een array wordt gebruikt om temperaturen op te slaan. Vraag hen om de temperatuur van de derde dag (index 2) te berekenen en op te schrijven, en om een zin te schrijven die uitlegt waarom een array hier efficiënter is dan drie aparte variabelen.

ToepassenAnalyserenEvaluerenCreërenZelfmanagementRelatievaardighedenBesluitvorming
Volledige les genereren

Enkele opmerkingen over deze eenheid onderwijzen

Begin met concrete voorbeelden uit de praktijk, zoals het opslaan van temperaturen of namen, om het nut van lijsten en arrays direct duidelijk te maken. Vermijd het direct uitleggen van O-notaties, maar laat leerlingen zelf ervaren hoe lang bepaalde bewerkingen duren door timers toe te passen. Benadruk herhaaldelijk dat efficiëntie afhangt van de keuze van structuur en algoritme, niet alleen van de code zelf.

Succesvolle leerlingen kunnen efficiënt lijsten en arrays implementeren, algoritmen zoals lineair zoeken of bubbelsorteren toepassen en uitleggen waarom deze structuren beter werken dan losse variabelen. Ze tonen begrip door code te analyseren en te vergelijken op correctheid en efficiëntie.


Pas op voor deze misvattingen

  • Tijdens Paired Programming: Lijst Bouwen zie je dat leerlingen lijsten behandelen als losse variabelen door handmatig waarden toe te wijzen in plaats van herhaling of loops te gebruiken.

    Geef leerlingen de opdracht om eerst een lijst met 10 elementen handmatig op te schrijven en daarna deze lijst te bewerken met een loop, gevolgd door een vergelijking van de code en uitkomsten met een medeleerling.

  • Tijdens Small Groups: Sorteer Algoritme denken leerlingen dat arrays altijd dynamisch zijn en in grootte kunnen veranderen, ongeacht de programmeertaal.

    Laat leerlingen in hun groepje testen of hun code werkt in zowel Python (lijsten) als Java (arrays) en bespreek de verschillen in groottebeheer tijdens een groepsreflectie.

  • Tijdens Paired Programming: Lijst Bouwen of Whole Class: Filter Challenge denken leerlingen dat doorzoeken van een lijst altijd even lang duurt, ongeacht de positie van het gezochte element.

    Laat leerlingen tijdens de debugsessie een timer toevoegen aan hun code om de tijd voor zoeken naar het eerste en laatste element te vergelijken en bespreek de resultaten in tweetallen.


Methodes gebruikt in dit overzicht