Dekomposition (opdele problemer)
Informatik C · STX · C-niveau · Computational thinking
💻 Dekomposition (opdele problemer)
Dekomposition = at opdele et komplekst problem i mindre, håndterbare delproblemer. Computational Thinking-grundkomponent.
Procedure:1. Forstå hovedproblemet.
2. Identificér klare delopgaver.
3. Løs hver del separat.
4. Kombinér løsninger til samlet svar.
Eksempel: lav et tic-tac-toe-spil. Dekomposition: a) tegn 3×3-bræt på skærm, b) lad spillerne klikke og placere X/O, c) tjek om nogen har vundet (3 i række), d) erklær vinder eller uafgjort. Hver delopgave kan kodes som funktion.
Eksempel 2: byg quiz-app — input spørgsmål, vis spørgsmål, modtag svar, vurder rigtigt/forkert, beregn score, vis resultat.
Programmerings-fordele: Modularitet (uafhængige funktioner kan testes separat), genbrug (samme funktion bruges flere steder), læsbarhed (kort, fokuseret kode), samarbejde (forskellige udviklere arbejder på forskellige moduler).
Klassisk eksempel: Unix-filosofien: "do one thing and do it well" — små værktøjer kombineres (ls | grep .py | wc -l tæller Python-filer).
Top-down vs. bottom-up: ovenfra og ned (hovedproblem først, opdel) eller nedefra og op (byg komponenter, kombinér).
Læringsmål
- Anvende dekomposition (opdele problemer)
- Identificere mønstergenkendelse og abstraktion
- Skrive pseudokode og flowcharts
- Anvende lineær og binær søgning
- Anvende sortering (boble, indsættelse)
Sådan kan du arbejde med emnet
- Tag et komplekst problem (fx at lave en quiz-app) og dekomponér det i mindst 10 delopgaver
- Forklar, hvad der er formålet med dekomposition i programmering
- Diskutér, hvad der er sammenhengen mellem dekomposition og funktioner i kode
Arbejd iterativt med prototyper og dokumentation. Test, evaluér og dokumentér.
Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.
Prøv Fagportalen gratis