Aktivitet

Pseudokode

Pseudokode er en metode til at gennemtænke og forstå en algoritme, før man koder et program.

I nedenstående video bliver metoden pseudokode udfoldet i forhold til teknologiforståelse. Videoen kan bruges af læreren som inspiration til en gennemgang af metoden for klassen, eller den kan ses sammen med eleverne.

© Styrelsen for Undervisning og Kvalitet

 

Undervisningsaktivitet: Pseudokode som procesbeskrivelse

Denne aktivitet sætter fokus på metoden pseudokode. Formålet er, at eleverne lærer at anvende pseudokode som en metode til gennemtænke, udvide og præcisere en algoritme.

 

Målgruppe og tidsforbrug

Aktiviteten er henvendt til mellemtrinnet og kan også anvendes i udskolingen.

Med forenklinger kan aktiviteten også bruges i indskolingen.

Anslået tidsforbrug: Tre lektioner

 

Tilrettelæggelse

Aktiviteten består af en kort indledende del, hvor metoden pseudokode anvendes i fællesskab, og en længere del, hvor eleverne i grupper kan anvende metoden til at løse en række opgaver med stigende kompleksitet, inden der samles op fælles på gruppearbejdet.

Materialer

 

Aktivitetens opbygning

Aktiviteten er opbygget i tre faser. Først kan klassen samarbejde om at anvende metoden i fællesskab, og dernæst kan eleverne arbejde i mindre grupper med en opgave, som er struktureret gennem en række trin. Til sidst kan eleverne præsentere og sammenligne deres løsninger fra gruppearbejdet.

Aktiviteten kan rammesættes og perspektiveres via en fælles introduktion til metoden, eventuelt med udgangspunkt i videoen. Hvis sproget er en udfordring for dine elever, kan du stoppe centrale steder undervejs og sikre, at de har forstået indholdet. Du kan også vælge at anvende den YouTube-video, der linkes til under ”Materialer”, som led i introduktionen.

1. Indledende øvelse

Målet med den fælles indledende øvelse er, at eleverne ved hjælp af pseudokode kan “programmere” dig til at udføre en bestemt handling på samme måde som faren i YouTube-videoen. Det kan for eksempel være at tegne en smiley på tavlen, tømme skraldespanden eller lave en kop kaffe med mælk og sukker.

Lad eksempelvis eleverne skrive pseudokodesætninger på tavlen, og udfør dem derefter helt bogstaveligt. I eksemplet med kaffen rører du måske ud i luften, hvis eleverne har glemt at skrive, hvor der skal røres rundt, og hvis de ikke har skrevet, hvornår du skal stoppe med at hælde kaffe, eller at du skal hælde op i koppen, hælder du måske kaffe ud på bordet. Lad eleverne ændre deres pseudokode, indtil alle fejl er rettede.

2. Gruppearbejde

Eleverne kan i denne fase arbejde i mindre grupper med at omsætte en velkendt proces til pseudokode. I eksemplet her tages udgangspunkt i en elevator.

Opgaven kan stilladseres i trin, hvor der gradvist bygges nye funktioner på, som elevatoren skal kunne, så pseudokoden skal modificeres, omstruktureres og udvides gennem trinnene. Eleverne kan instrueres således:

  • Trin 1: En elevator befinder sig i en virksomhed, hvor der er fem etager ud over stueplan. Den skal kunne køre op og ned og standse på alle etager. Lav en pseudokode, der beskriver dette.
    Eksempel på løsning:
    1: Afvent elevatorkald;
           2: Hvis elevatorkald, kør til etage, der kaldes fra
           3:  Åbn dør
           4: Afvent etagetryk
                                 5: Hvis etagetryk, luk dør og kør til valgt etage
                                 6: Åbn dør
                                 7: Gentag trin 1

     
  • Trin 2: Elevatoren er ikke så effektiv, så virksomheden vil gerne have, at den stopper undervejs og tager andre ventende med, hvis den alligevel kører forbi. Udvid pseudokoden fra trin 1.
     
  • Trin 3: Elevatoren skal coronasikres, og den skal derfor kunne styres ved hjælp af noget andet end knapper. Virksomheden vil gerne have stemmestyring. De vil også gerne have en automatisk oplæser ligesom telefonsvarere, der instruerer brugerne i, hvilke kommandoer de kan bruge. Udvid pseudokoden fra trin 2.
     
  • Trin 4: Elevatoren med stemmestyring fungerer godt, men det går for langsomt. Virksomhedens direktør har hørt om en moderne type elevator, som kan programmeres til at være delvist automatiseret. Elevatoren skal forbindes til et dørkamera, som registrerer, hvem der kommer ind ad indgangsdøren i stueetagen. De ansatte bliver automatisk kørt til deres faste kontorgang. Gæster har forud for deres besøg modtaget en QR-kode, som scannes, hvorefter elevatoren automatisk fragter dem til den etage, de skal til møde på. Lav en ny pseudokode, som viser, hvordan det kan gøres.
     
  • Trin 5: Både direktøren og medarbejderne er rigtig glade for deres nye elevator, og de vil gerne have flere automatiserede funktioner. 
    De ønsker, at elevatoren skal prioritere stueetagen, hvor folk, der skal til møde i virksomheden, kommer ind. Elevatoren skal også prioritere særlige behov, for eksempel gangbesværede eller folk med meget bagage. Elevatoren benytter kameraer på alle etager til at vurdere de ventende. Udvid pseudokoden fra trin 4.
     
  • Trin 6: Nogle medarbejdere har klaget over, at de ofte kommer til at vente længe, fordi elevatoren er optaget af at fragte gæster og andre, som den er programmeret til at prioritere. Virksomheden har besluttet, at elevatoren maksimalt må ignorere andre ventende to gange i træk. Derefter skal den servicere de øvrige ventende, inden den igen skal prioritere gæster og ventende med særlige behov. Udvid pseudokoden fra trin 5.

3. Afslutning og opsamling

Til sidst kan de færdige pseudokoder sammenlignes. De kan hænges op, og der kan afsluttes med en fælles snak om de løsninger, grupperne har lavet. Er der en eller flere grupper, som har kunnet lave alle trin? Er der forskellige løsninger, som alligevel har samme resultat?

 

Udvidelser og forslag til videre arbejde

Aktiviteten kan udvides på følgende måder:

  • Eleverne kan lave pseudokoder over andre velkendte processer. Hver gruppe kan arbejde med en proces, som er hemmelig for de andre. Bagefter kan klassen lave en quiz, hvor det gælder om hurtigst at gætte, hvilken proces der ligger bag de andre gruppers pseudokoder.
  • Eleverne kan prøve at omsætte deres pseudokode til kodeblokke. De kan muligvis ikke lave hele programmet, men måske kan de gennemskue, hvilke blokke der skal bruges bestemte steder. CodingLab på Skoletube er velegnet til dette.

 

Inspiration

På emu.dk findes 20 forløb, som er udarbejdet til forsøgsfagligheden teknologiforståelse. Videoen øverst på siden kan med fordel anvendes til at udfolde metoden pseudokode, hvis du anvender et af de 20 undervisningsforløb. Det er særligt oplagt at komme ind på pseudokode i forbindelse med forløbene:

 

Kreditering

Aktiviteten og begrebsguidevideoen er udviklet af Eva Petropouleas, CFU Absalon, Malte von Sehested, CFU KP og Mark Holler, CFU UCN.

Siden er opdateret af emu-redaktionen
Rettigheder:

Tekstindholdet på denne side må bruges under følgende Creative Commons-licens - CC/BY/NC/SA Kreditering/Ikke kommerciel/Deling på samme vilkår. Creative Commons-licensen gælder kun for denne side, ikke for sider, der måtte henvises til fra denne side.
Billeder, videoer, podcasts og andre medier og filer på siden er underlagt almindelig ophavsret og kan ikke anvendes under samme Creative Commons-licens som sidens tekstindhold.