ZBC Handels- og Teknisk gymnasium Slagelse
lan
Hovedmenu
history
Versionsinformation
ZBC Handels- og Teknisk gymnasium Slagelse
Hovedmenu
Log ind
keyboard_arrow_down
login
Brugernavn
login
MitID
Kontakt
Hjælp
Hjælp
Holdet S2023x Pro - Undervisningsbeskrivelse
menu
document_scanner
Vis udskrift
print
Udskriv i A3-format
print
Udskriv i A4-format
Undervisningsbeskrivelse
Stamoplysninger til brug ved prøver til gymnasiale uddannelser
Termin(er)
2024/25 - 2025/26
Institution
ZBC
Fag og niveau
Programmering B
Lærer(e)
Hold
S2023x Pro (
S2x Pro
,
S3x Pro
)
Oversigt over gennemførte undervisningsforløb
Titel 1
Introduktion
Titel 2
Projekt 1 - Algoritmisk kunst
Titel 3
Datastrukturer (sammensatte datatyper)
Titel 4
Astro Pi
Titel 5
Projekt 2 - PyGame
Titel 6
Studieretningscase med Matematik (SRC)
Titel 7
Intro til Rust & repetition
Titel 8
Projekt Skak
Titel 9
Hukommelse
Titel 10
Projekt Droner
Titel 11
Generalisering og polymorfi
Titel 12
Projekt Bot
Titel 13
Eksamensprojekt
Beskrivelse af de enkelte undervisningsforløb (1 skema for hvert forløb)
Titel 1
Introduktion
Introduktion til programmering i Python.
Fokus på:
- Funktioner
- Forgreninger
- Løkker
Faglige mål:
- læse enkle programmer og redegøre for deres funktionsmåde og anvendelsesmuligheder
- rette og tilpasse enkle programmer
- anvende eksisterende programdele og biblioteksmoduler i arbejdet med at programmere et fungerende system
Kernestof:
- programmeringssprog og elementer i programmeringssprogets opbygning såsom data- og kontrolstrukturer
- programdele og biblioteksmoduler
Omfang:
10% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Kernestof:
Sørg for at du stadig har VScode (eller eget alternativ) samt Python installeret.
Sørg for at have lavet ned tom. øvelse 5 i "Hello World" oplægget.
Se video: Git Command Basics. Overvej hvilke dele af de omtalte kommandoer du lavede i sidste uge.
Hvis det stadig er lidt uklart med funktioner i Python: Se Video: Python Functions (Hvis man vil prøve eksemplet med farveskift i videoen, så skal man hente sty modulet (skriv "pip install sty" i terminalen evt. med "py -m" eller "py3 -m" foran).)
Læs de to første paragraffer i 1.6 Forgreninger
Øvelser til lektionen: Funktioner med forgreninger
Repeter efter behov de tre koncepter: Variabler, funktioner og forgreninger. (3 links til videoer)
Lav en øvelse eller to mere fra link: øvelser om funktioner og forgreninger
Se evt. Video: Loops and Iterations
Omfang
Estimeret: 13,00 moduler
Dækker over: 15
moduler
Særlige fokuspunkter
Faglige
Lytte
Læse
Søge information
Skrive
Almene (tværfaglige)
Overskue og strukturere
Personlige
Selvstændighed
IT
Væsentligste arbejdsformer
Individuelt arbejde
Lærerstyret undervisning
Titel 2
Projekt 1 - Algoritmisk kunst
Projekt om algoritmisk kunst
Overordnet mål: Fremstille forskellige kunstværker med brug af forskellige metoder (såsom løkker, rekursion, animation)
Under projektet introduceres nye begreber løbende.
Individuelt arbejde eller små grupper: 1-3 personer.
Projektet afsluttes med mundtlig præsentation.
Faglige mål
̶ anvende eksisterende programdele og biblioteksmoduler i arbejdet med at programmere et fungerende system
̶ demonstrere systematik i programmeringsprocessen
̶ løse en enkel problemstilling gennem udviklingen af et program bl.a. i samspil med andre fag
̶ anvende grundlæggende konstruktioner i et programmeringssprog
Kernestof
̶ programmeringssprog og elementer i programmeringssprogets opbygning såsom data- og kontrolstrukturer
̶ programdele og biblioteksmoduler
̶ arbejdsgange og systematik i programmeringsprocessen
Omfang:
10% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Kernestof:
Link: Læs om projekter i programmering
Sørg for at turtle_demo.py (gennemgået i forrige time) virker på din computer FØR timen. Hvis ikke, så skriv på lectio!
Lav versionsplan (se forrige skemabrik) hvis du ikke nåede det i sidste time.
Tjek at din logbog på bitbucket er opdateret med dine seneste tilføjelser.
Sørg for at have et fælles repo til gruppens kunstværk som alle i gruppen kan se og skrive til på bitbucket.
Læs afsnittet om trinvis forbedring
Overvej hvordan man kan finde og rette fejl under udviklingen af et program.
Læs om rutediagrammer.
Omfang
Estimeret: 15,00 moduler
Dækker over: 19
moduler
Særlige fokuspunkter
Faglige
Lytte
Læse
Søge information
Projektarbejde
Formidling
Almene (tværfaglige)
Overskue og strukturere
Personlige
Selvstændighed
Kreativitet
Sociale
Samarbejdsevne
IT
Væsentligste arbejdsformer
Projektarbejde
Titel 3
Datastrukturer (sammensatte datatyper)
Forløb med sammensatte datatyper i Python: List, Dictionary, Tuple.
Kernestof:
programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
Omfang:
5% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Kernestof:
Læs om datatyper.
Læs om 1.7 Arrays (datastrukturer)
Omfang
Estimeret: 6,00 moduler
Dækker over: 7
moduler
Særlige fokuspunkter
Væsentligste arbejdsformer
Titel 4
Astro Pi
Deltagelse i ESA astro pi hvor der skal programmeres en Raspberry Pi til at måle størrelser vha. SenseHat modul, behandle denne data og gemme resultater i en datafil.
Faglige mål:
- bruge programmering til at undersøge et emne eller problemområde
- behandle problemstillinger i samspil med andre fag
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
- arkitekturen for programmers interaktion med omgivelserne med henblik på hændelsesstyret interaktion og interaktion mellem systemer
- generiske programdele og biblioteksmoduler
Omfang:
10% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Kernestof:
Se intro video til Astro Pi.
Omfang
Estimeret: 14,00 moduler
Dækker over: 13
moduler
Særlige fokuspunkter
Faglige
Søge information
IT - filhåndtering (input/output) og måling med sensorer
Væsentligste arbejdsformer
Gruppearbejde
Projektarbejde
Titel 5
Projekt 2 - PyGame
I dette projekt programmeres et simpelt spil vha. PyGame. Man kan arbejde ud fra et af flere projektforslag eller lave sit eget forslag. Der udleveres simple eksempler der kan bruges som skabelon og/eller til inspiration.
Programmet skal opbygges vha. trinvis forbedring og der skal skrives kommentarer til koden. Sørg for at holde koden overskuelig og logisk struktureret. Der vil løbende blive introduceret nye begreber under projektforløbet som så vidt muligt skal inddrages i projektet. Fokuspunkter: Sammensatte datatyper, anvendelse af klasser fra pygame og hændelsesbaseret programmering.
Under projektet trænes dokumentation af sin programmering og udformning af synopsis.
Gruppearbejde: 2-3 personer.
Projektet danner basis for mundtlig årsprøve.
Synopsis er på 5-8 sider.
Arbejdsprocessen skal dokumenteres i logbog.
Faglige mål:
̶ læse enkle programmer og redegøre for deres funktionsmåde og anvendelsesmuligheder
̶ anvende eksisterende programdele og biblioteksmoduler i arbejdet med at programmere et fungerende system
̶ anvende grundlæggende konstruktioner i et programmeringssprog
̶ demonstrere viden om fagets identitet og metoder.
Kernestof:
̶ programmeringssprog og elementer i programmeringssprogets opbygning såsom data- og kontrolstrukturer
̶ programdele og biblioteksmoduler
̶ arbejdsgange og systematik i programmeringsprocessen
̶ abstrakte programmeringsbeskrivelser og dokumentation.
Omfang:
10% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Kernestof:
Sørg for at pygame er installeret (afprøv board.py hvis du ikke nåede det i timen).
Overvej hvilke datastrukturer der kunne være relevante til jeres spil. Se evt. tidligere oplæg om emnet.
Læs/skim siden om synopsis. Man behøver ikke at læse alle de sammenklappede afsnit.
Skriftligt arbejde:
Titel
Afleveringsdato
Synopsis til programmeringsprojekt
13-04-2025
Omfang
Estimeret: 25,00 moduler
Dækker over: 24
moduler
Særlige fokuspunkter
Faglige
Søge information - API dokumentation (pygame)
Skrive - Formidling vha. Synopsis
IT - Sammensatte datatyper (List, dictionary, Tuple, Set)
Væsentligste arbejdsformer
Gruppearbejde
Projektarbejde
Titel 6
Studieretningscase med Matematik (SRC)
I programmeringsdelen af SRC fokuseres der på klasser i Python og hvordan disse kan bruges til at lave funktionsobjekter.
Faglige mål:
- bruge programmering til at undersøge et emne eller problemområde, med henblik på – via programmets funktion - at skabe ny indsigt eller til at løse et problem
- behandle problemstillinger i samspil med andre fag
- redegøre for simple specifikationsmodeller og realisere disse i simple velstrukturerede programmer samt teste disse
- demonstrere viden om fagets identitet og metoder
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion
- arbejdsgange og systematik i programmeringsprocessen, herunder test og fejlfinding
- abstrakte programmeringsbeskrivelser og dokumentation.
Omfang:
10% - Systime, Programmering & Green Tea Press, Think Python 2e
Indhold
Omfang
Estimeret: 15,00 moduler
Dækker over: 0 moduler
Særlige fokuspunkter
Faglige - Funktionsobjekter
Læse
Søge information
Skrive
Projektarbejde
Formidling
Selvrefleksion
Almene (tværfaglige)
Overskue og strukturere
Personlige
Selvstændighed
Ansvarlighed
IT
Væsentligste arbejdsformer
Projektarbejde
Titel 7
Intro til Rust & repetition
Syntaks, kommentarer, variabler, funktioner, sammensatte datatyper, løkker og forgreninger.
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
Omfang:
5% - Systime, Programmering, "The Rust Programming Language" & egne noter
Indhold
Kernestof:
Styr på værktøjer med nyt sprog (Rust), plan og indledende/repeterende øvelser.
Logbog: Se punkter i bunden af oplæg
Skim Rust cheatsheet og kig på første eksempel i Rust by example. Lav evt. et bogmærke e.l. til en eller begge hvis du tror de kan være gavnlige fremadrettet.
Video: Structs
Se video om Vectors og sammenlign med hvordan det bliver brugt i stjerne-øvelsen.
Se video om moduler og læs evt. teorisiden om moduler.
Omfang
Estimeret: 6,00 moduler
Dækker over: 9
moduler
Særlige fokuspunkter
Faglige
Lytte
Læse
Skrive
IT
Væsentligste arbejdsformer
Individuelt arbejde
Lærerstyret undervisning
Titel 8
Projekt Skak
Fremstilling af skakprogram med generering af træk. Herunder teori om kontrolstrukturer, grådige algoritmer, minimax, fejlfinding, fejlhåndtering, abstraktion, indkapsling, klassediagram med relationer og programmeringsparadigmer.
Faglige mål:
- anvende avancerede konstruktioner i et programmeringssprog
- redegøre for arkitekturen af programmer på forskellige abstraktionsniveauer, herunder relationen mellem brug og funktion
- rette, tilpasse og udvide avancerede programmer
- arbejde inkrementelt og systematisk i programmeringsprocessen
Kernestof:
- arkitekturen for programmers interaktion med omgivelserne med henblik på hændelsesstyret interaktion og interaktion mellem systemer
- generiske programdele og biblioteksmoduler
- arbejdsgange og systematik i programmeringsprocessen, herunder test og fejlfinding
Omfang:
10% - Systime, Programmering, "The Rust Programming Language" & egne noter
Indhold
Kernestof:
Prøv at få sat startopstillingen på skakbrættet. Det kan gøres under data i Board::new() funktionen der er markeret som "Trin 0" i board.rs. Bemærk at new_test() o.l. senere kan bruges til forskellige testopstillinger.
Læs teori om enums evt. kun første afsnit med eksempel.
Sørg for at evaluering af brættet bliver udskrevet (fx vha. println) som beskrevet i vejledningen til trin 2. Sørg for at flere brikker end kun bønder bliver taget med i evalueringen.
Læs om fejlhåndtering.
Læs om abstraktion og indkapsling
Læs om programmeringsparadigmer. Du kan evt. nøjes med at læse t.o.m. kassen "Paradigme: Objektorienteret programmering".
Læs om klassediagrammer.
Skriftligt arbejde:
Titel
Afleveringsdato
Kopi af logbog d. 9/9
09-09-2025
Projekt Skak
12-10-2025
Omfang
Estimeret: 20,00 moduler
Dækker over: 14
moduler
Særlige fokuspunkter
Faglige
IT
Væsentligste arbejdsformer
Projektarbejde
Titel 9
Hukommelse
Allokering af hukommelse, referencer og pointers.
Faglige mål:
- anvende avancerede konstruktioner i et programmeringssprog
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
Omfang:
5% - Rust bog & egne noter
Indhold
Kernestof:
Læs om hukommelse og pointers.
Se video om Box, Rc, Arc. Man kan evt. nøjes med første del om Box.
Omfang
Estimeret: 4,00 moduler
Dækker over: 3
moduler
Særlige fokuspunkter
Faglige
IT
Væsentligste arbejdsformer
Individuelt arbejde
Lærerstyret undervisning
Titel 10
Projekt Droner
Projektforløb hvor der udvikles et computerprogram at sende kommandoer til en lille indendørs drone og modtage svar, telemetri data samt videosignal.
Behandlede begreber:
- Netværkskommunikation (UDP)
- Anonyme funktioner
- Tråde (samtidig programmering)
- Kommunikation mellem programmer (grænseflader)
- Biblioteksmoduler
Faglige mål:
- demonstrere viden om fagets identitet og metoder
- arbejde inkrementelt og systematisk i programmeringsprocessen
- anvende avancerede konstruktioner i et programmeringssprog
Kernestof:
- arkitekturen for programmers interaktion med omgivelserne med henblik på hændelsesstyret interaktion og interaktion mellem systemer
- generiske programdele og biblioteksmoduler
- arbejdsgange og systematik i programmeringsprocessen, herunder test og fejlfinding
Omfang:
10% - Systime, Programmering & egne noter
Indhold
Kernestof:
Overvej hvordan der kommunikeres over netværk i eksemplet "commands.rs"
Læs om anonyme funktioner.
Læs om samtidig programmering.
Læs om (og udfør evt. øvelser til) "Biblioteker, Cargo og Crates" på oplægget om droner samt teorisiden om pakker.
Skriftligt arbejde:
Titel
Afleveringsdato
Projekt Drone
07-12-2025
Omfang
Estimeret: 20,00 moduler
Dækker over: 13
moduler
Særlige fokuspunkter
Væsentligste arbejdsformer
Titel 11
Generalisering og polymorfi
Generalisering bl.a. vha. parametrisering. Polymorfi under kompilering (static dispatch) ved overlæsning og generisk funktion. Polymorfi under kørsel (dynamic dispatch) vha. referencer.
Faglige mål:
- bruge programmering til at undersøge et emne eller problemområde, med henblik på – via programmets funktion - at skabe ny indsigt eller til at løse et problem
- redegøre for simple specifikationsmodeller og realisere disse i simple velstrukturerede programmer samt teste disse
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk, kontrolstrukturer, parametrisering/abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
Omfang:
10% - Systime, Programmering & egne noter
Indhold
Kernestof:
Læs om generalisering og polymorfi
Hvis du koder i rust: Se video om Traits and Generic Types
Hvis du koder i Python: Læs om Nedarvning
Omfang
Estimeret: 4,00 moduler
Dækker over: 3
moduler
Særlige fokuspunkter
Faglige
Lytte
Læse
Søge information
Selvrefleksion
Almene (tværfaglige)
Analytiske evner
Overskue og strukturere
IT
Væsentligste arbejdsformer
Individuelt arbejde
Lærerstyret undervisning
Titel 12
Projekt Bot
Selvstændigt projektarbejde som optakt til eksamensprojekt. Der udvikles et program der kan automatisere selvvalgte opgaver. Der skal anvendes polymorfi.
Faglige mål:
- bruge programmering til at løse et problem
- anvende avancerede konstruktioner i et programmeringssprog
- redegøre for arkitekturen af programmer på forskellige abstraktionsniveauer
- redegøre for simple specifikationsmodeller og realisere disse i simple velstrukturerede programmer
samt teste disse
- rette, tilpasse og udvide avancerede programmer
- demonstrere viden om fagets identitet og metoder
- arbejde inkrementelt og systematisk i programmeringsprocessen.
Kernestof:
- programmeringssprog og elementer i programmers opbygning, herunder variabler, typer, udtryk,
kontrolstrukturer, parametrisering / abstraktionsmekanismer, rekursion, polymorfi og algoritmemønstre
- generiske programdele og biblioteksmoduler
- arbejdsgange og systematik i programmeringsprocessen, herunder test og fejlfinding
- abstrakte programmeringsbeskrivelser og dokumentation.
Omfang:
5% - Systime, Programmering & egne noter
Indhold
Kernestof:
Logbog: Overordnet dokumentation
Manglende logbog sidste uge:
Skriftligt arbejde:
Titel
Afleveringsdato
Projekt bot
08-03-2026
Omfang
Estimeret: 20,00 moduler
Dækker over: 20
moduler
Særlige fokuspunkter
Faglige
Søge information
Skrive
Formidling
IT - Valgfrit sprog
Væsentligste arbejdsformer
Projektarbejde
Titel 13
Eksamensprojekt
Mål: Udarbejde et program og tilhørende dokumentation i form af synopsis.
Man vælger selv tema og programmeringssprog. Man kan evt. lade sig inspirere af egne tidligere projekter eller nedenstående liste af tidligere gennemførte eksamensprojekter.
Projektbeskrivelsen skal indeholde valg af programmeringssprog, en kort indledning, problemformulering og oversigt over hvert gruppemedlems forventede ansvar i projektet. (Dette må gerne genbruges i synopsis.)
Indhold
Kernestof:
Logbog
Links til synopsis og prøveinfo
Skriftligt arbejde:
Titel
Afleveringsdato
Projektbeskrivelse
15-03-2026
Eksamensprojekt
08-05-2026
Omfang
Estimeret: 20,00 moduler
Dækker over: 21
moduler
Særlige fokuspunkter
Faglige
IT
Væsentligste arbejdsformer
Projektarbejde
Vis samlet undervisningsbeskrivelse samt elevtilknytning til forløb
lan
Hovedmenu
login
MitID
login
Brugernavn
more_horiz
Mere
{ "S": "/lectio/165/stamdata/stamdata_edit_student.aspx?id=666\u0026prevurl=studieplan%2fuvb_hold_off.aspx%3fholdid%3d67437055045", "T": "/lectio/165/stamdata/stamdata_edit_teacher.aspx?teacherid=666\u0026prevurl=studieplan%2fuvb_hold_off.aspx%3fholdid%3d67437055045", "H": "/lectio/165/stamdata/stamdata_edit_hold.aspx?id=666\u0026prevurl=studieplan%2fuvb_hold_off.aspx%3fholdid%3d67437055045" }