Hemläxa
Årskurs: Gymnasiet
Ämne: Tillämpad programmering
Tema: Avancerad programmering
Ordkollen
Här listas fem ämnesord på läxans tema som är bra att känna till betydelsen av.
- Rekursion: En metod där en funktion anropar sig själv för att lösa ett problem.
- Iterativ metod: En metod som upprepade gånger utför en åtgärd under en loop.
- Designmönster: Lösningsstrategier för vanliga problem inom programvaruutveckling som syftar till att skapa mer återanvändbar och strukturerad kod.
- Fibonacci-sekvensen: En sekvens där varje tal är summan av de två föregående; ofta använd som exempel på rekursion.
- Faktorial: Produkten av alla positiva heltal upp till ett givet tal, ofta beräknad med både rekursiva och iterativa metoder.
Instuderingsfrågor
- Vad menas med rekursion i programmering?
- Ge ett exempel på en funktion som kan implementeras rekursivt.
- Vilka är fördelarna med att använda rekursion?
- Nämn en nackdel med rekursion och ge exempel.
- Hur fungerar en iterativ metod?
- Under vilka omständigheter kan det vara mer effektivt att använda en iterativ metod istället för rekursion?
- Vad är syftet med designmönster inom programmering?
- Nämn två olika designmönster och kort beskriv deras funktion.
- Beskriv skillnaden mellan rekursiva och iterativa lösningar.
- Vad är en stack overflow och hur kan det relateras till rekursion?
Skrivuppgift
Uppgift 1: Rekursiv lösning
Skapa en rekursiv funktion i det programmeringsspråk du väljer som beräknar faktorialen av ett givet tal. Förklara hur din funktion fungerar, vilka steg som utförs och varför rekursion används i detta fall. Svarslängd: ca. 200 ord (En fjärdedel sida)
Svar:
Uppgift 2: Iterativ lösning
Implementera en iterativ version av din faktorialfunktion. Beskriv skillnaderna i kod mellan den rekursiva och den iterativa metoden. Vilket alternativ valde du och varför? Svarslängd: ca. 200 ord (En fjärdedel sida)
Svar:
Uppgift 3: Jämför och analysera metoder
Skriv en analys av de två metoder du har arbetat med (rekursion och iteration). Diskutera vilken metod som var mer effektiv baserat på prestanda och minnesanvändning. Svarslängd: ca. 300 ord (En halv sida)
Svar: