Algoritmer
-
Upload
marcus-weiderstal -
Category
Documents
-
view
677 -
download
0
Transcript of Algoritmer
![Page 1: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/1.jpg)
Algoritmer
Instruktioner, kontrollstrukturer och pseudokodMarcus WeiderstålProgrammering I
Tullinge Gymnasium
![Page 2: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/2.jpg)
Algoritm
En algoritm består av ett begränsat antal instruktioner som ska utföras för
att lösa ett problem
![Page 3: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/3.jpg)
Vad är en algoritm?
En algoritm är en beskrivning av hur man löser ett visst (del)problem.
En algoritm ska uppfylla följande kriterier:
• Lösa det givna problemet.• Vara entydig.• Avslutas om problemet har ett
slutmål (vilket inte alltid är fallet)
![Page 4: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/4.jpg)
Kontrollstrukturer• Sekvens• Selektion• Iteration
Kallas även för ”Strukturteoremet”
![Page 5: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/5.jpg)
Sekvens
Består av en serie instruktioner som utförs i tur och ordning.
Tar oss från punkt A till punkt B.
Sats Sats Sats
![Page 6: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/6.jpg)
Selektion
Hjälper oss att styra hur en programkörning ska fortsätta då det finns olika vägra att välja
VilkorSats SatsSats Sats
Sant
Falskt
![Page 7: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/7.jpg)
iteration
När något upprepas av diverse anledningar
Vilkor Sats Sats
Falsk
Sant
![Page 8: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/8.jpg)
Några exempel…Algoritmer på ICA
![Page 9: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/9.jpg)
Sekvens
1. Gå till affären2. Ta två liter mjölk
3. Ta fem paket nudlar4. Gå till kassan
5. Betala
![Page 10: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/10.jpg)
Selektion
Om nudlar är billigare än spagettiKöp nudlar
AnnarsKöp spagetti
![Page 11: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/11.jpg)
Iteration
Upprepa tills inköpslistan är tom:Hämta nästa vara på listan
Stryk varan på listan
![Page 12: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/12.jpg)
Pseudokod
En mix av vanligt skriven text och programmeringskod.
![Page 13: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/13.jpg)
VARFöR
KLART
![Page 14: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/14.jpg)
Två olika skolor
• De som vill skriva helt på ”vanligt språk”
• De som vill kasta in lite programmering i pseudokod.
![Page 15: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/15.jpg)
If nudlar billigare än spagettiHämta nudlarelseHämta spagettiHämta ketchup
![Page 16: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/16.jpg)
Intendering
• Rättar till pseudokoden så att den blir mer läslig.
• Vi arbetar med ”tab” för att ha koll på vilka steg och instruktioner som hör till ett speciellt utryck.
If nudlar billigare än spagettiHämta nudlar
elseHämta spagetti
Hämta ketchup
![Page 17: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/17.jpg)
If nudlar billigare än spagettiHämta nudlar
elseHämta spagetti
Hämta ketchup
If nudlar billigare än spagettiHämta nudlarelseHämta spagettiHämta ketchup
”Ska vi ha ketchup bara om vi köper spagetti eller vad menar dem?”
”Jaha, vi ska alltid köpa ketchup även om vi handlar nudlar”
![Page 18: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/18.jpg)
Gör själva:Pseudokod om AIK-programmet.
![Page 19: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/19.jpg)
If poäng är mer än 76AIK går till slutspel
If poäng är mindre än 68AIK får spela kvalserien
else AIK har klarat elitseriekontraktet men
har spelat färdig för säsongen.
![Page 20: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/20.jpg)
Om poäng är mer än 76Skriv ut: AIK går till slutspel
Om poäng är mindre än 68Skriv ut: AIK får spela kvalserien
AnnarsSkriv ut: AIK har klarat elitseriekontraktet
men har spelat färdig för säsongen.
![Page 21: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/21.jpg)
![Page 22: Algoritmer](https://reader034.fdocument.pub/reader034/viewer/2022052621/558a66c6d8b42a5a4a8b46ef/html5/thumbnails/22.jpg)
Några slutord