Algoritmer

Post on 24-Jun-2015

677 views 0 download

Transcript of Algoritmer

Algoritmer

Instruktioner, kontrollstrukturer och pseudokodMarcus WeiderstålProgrammering I

Tullinge Gymnasium

Algoritm

En algoritm består av ett begränsat antal instruktioner som ska utföras för

att lösa ett problem

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)

Kontrollstrukturer• Sekvens• Selektion• Iteration

Kallas även för ”Strukturteoremet”

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

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

iteration

När något upprepas av diverse anledningar

Vilkor Sats Sats

Falsk

Sant

Några exempel…Algoritmer på ICA

Sekvens

1. Gå till affären2. Ta två liter mjölk

3. Ta fem paket nudlar4. Gå till kassan

5. Betala

Selektion

Om nudlar är billigare än spagettiKöp nudlar

AnnarsKöp spagetti

Iteration

Upprepa tills inköpslistan är tom:Hämta nästa vara på listan

Stryk varan på listan

Pseudokod

En mix av vanligt skriven text och programmeringskod.

VARFöR

KLART

Två olika skolor

• De som vill skriva helt på ”vanligt språk”

• De som vill kasta in lite programmering i pseudokod.

If nudlar billigare än spagettiHämta nudlarelseHämta spagettiHämta ketchup

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

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”

Gör själva:Pseudokod om AIK-programmet.

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.

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.

Några slutord