Algoritmer
Algoritmer
Algoritm är en stegvis instruktion som löser ett särskilt problem eller en uppgift i ett program. Ett program innehåller flera olika algoritmer som har olika uppgifter.
För att programmet och datorn ska kunna tolka instruktionen måste algoritmen vara:
- exakt – Om du stavar fel eller glömmer ett tecken förstår datorn inte instruktionen.
- fullständig – Datorn kan inte förstå algoritmen om det saknas information. I motsats till en människa kan inte en dator tolka eller gissa vad den fullständiga instruktionen skulle vara.
- i rätt ordning – Det är viktigt att instruktionerna kommer i rätt ordning, då datorn inte själv kan avgöra vad som ska göras först eller sist.
Kodcentrum har skapat en tydlig och pedagogisk film till Skolverket där man jämför algoritmer med att laga pannkakor.
Samma princip sammanfattas också väldigt tydligt i den mycket underhållande videon där en familjefar följer barnens instruktioner för att skapa en macka till punkt och pricka. Det är lättare sagt än gjort.
Olika typer av algoritmer
Det finns olika algoritmer som utför olika typer av instruktioner:
Sekvensalgoritm – kommandon som sker i tur och ordning: först – sedan – sist.
- Vardagsexempel: När du steker pannkakor måste du veta när du ska ha i de olika ingredienserna, så att du inte först steker pannkakorna och sedan vispar i äggen.
Villkorsalgoritm – olika val för kommandon, om – då – annars. Om något händer, då ska ett kommando utföras, annars ska ett annat kommando utföras.
- Vardagsexempel: Om du ska steka pannkakor så vill du ha dem gyllenbruna inte brända. En villkorsalgoritm skulle då bli: Om pannkakan är gyllenbrun – då ska du lyfta stekpannan från spisen då den är klar – annars låt pannkakan vara kvar (tills den är gyllenbrun).
Repetitionsalgoritm – upprepar kommandon i ”loopar”. Kommandon kan upprepas för alltid, X antal gånger, eller tills något annat händer.
- Vardagsexempel: Du har ett pannkaksrecept som innehåller 5 dl mjölk, du har bara ett decilitermått att använda. Algoritmen ska då upprepa/repetera att du ska hälla upp 1 dl mjölk 5 gånger.
Här är en algoritm för felsökning om lampan hemma inte fungerar.
På Digiteket finns en kurs som beskriver hur algoritmers utformning är resultatet av ett samspel mellan teknik och den kultur vi lever i. Det innebär att algoritmer bidrar till att forma villkoren för mycket av det vi gör på nätet, samtidigt som de speglar vår kultur. Här hittar du kursen: