Strukturerad problemlösning
Hur programmeringsproblem avgränsas och delas upp i tydliga steg. Genomgången kopplar programmeringsbegrepp till enkla, testbara program och tydliga problemlösningssituationer.
- Nivå 1
Förstå → Se exempel → Träna
Förstå
Kärnan
Strukturerad problemlösning börjar med att definiera indata, regler och önskat resultat innan lösningen implementeras i kod.
Så arbetar du
Formulera indata, regler och önskat resultat. Dela upp problemet, modellera lösningen och testa den manuellt innan den översätts till kod.
Nyanser och begränsningar
Det finns ofta flera fungerande lösningar. En enkel, testbar och begriplig algoritm kan vara bättre än en mer avancerad lösning som är svår att följa.
I ett programmeringsprojekt
Koppla kunskapen till ett tydligt problem, en avgränsad lösning och testbara krav. Dokumentera viktiga antaganden och kontrollera programmets beteende stegvis innan du bygger vidare.
Exempel
Exempel
- Ett biljettprogram delas upp i inläsning av ålder, val av prisregel och presentation av pris.
- Förklara därefter vilket programmeringsval som är viktigast för att lösningen ska bli tydlig, korrekt och användbar.
Så gör du
- 1Formulera problemet med indata och utdata.
- 2Dela upp problemet i mindre delar.
- 3Beskriv lösningen med pseudokod eller diagram.
- 4Testa lösningen manuellt med flera fall.
- 5Översätt den kontrollerade lösningen till kod.
Vanliga misstag
Vanligt misstag
Att börja koda innan problemet är avgränsat.
Bättre
Formulera indata, utdata och regler först.
Tydlig problemformulering minskar omtag.
Vanligt misstag
Att bara testa ett normalfall.
Bättre
Testa flera fall och relevanta gränser.
Svagheter syns ofta i gränsfallen.
Fundera
Vilket val skulle vara viktigast att kunna motivera när du arbetar med strukturerad problemlösning?
Träna
Övning
Beskriv hur du skulle använda kunskapen om strukturerad problemlösning i ett enkelt programmeringsprojekt.
Sammanfattning
- Hur programmeringsproblem avgränsas och delas upp i tydliga steg.
- Koppla programkod till det problem och den användare som lösningen är till för.
- Strukturera lösningen så att den går att förstå och testa.
- Felsök systematiskt i stället för att prova slumpmässiga ändringar.
Relaterade genomgångar
Fortsätt med något som hänger ihop med den här genomgången.
Problemnedbrytning
Hur större problem delas upp i mindre delar som kan lösas och testas separat.
Läs genomgångenPseudokod
Hur en algoritm kan beskrivas stegvis utan krav på exakt programspråkssyntax.
Läs genomgångenDiagramteknik & programflöde
Hur diagram kan visualisera sekvenser, beslut och upprepningar i ett program.
Läs genomgången