Hoppa till innehållet
Matematik · Årskurs 8

Idéer för aktivt lärande

Villkor och val i programmering

Aktivt arbete med villkor i programmering hjälper eleverna att se direkt hur logik styr programflödet. Genom att testa koden med olika värden och diskutera resultatet i klassen blir programmeringens abstrakta beslut konkret och begriplig.

Skolverket KursplanerLgr22:Ma7-9/Problemlösning/Algoritmer och programmering
20–45 minPar → Hela klassen4 aktiviteter

Aktivitet 01

Parprogrammering: Jämnt eller udda

Dela in elever i par där en skriver kod för att kontrollera om ett inmatat tal är jämnt eller udda med if-else. Den andra testar med olika tal och noterar resultat. Byt roller efter 10 minuter och jämför kod.

Förklara hur villkorssatser styr programmets flöde.

HandledningstipsNär eleverna skriver egna valprogram, be dem dokumentera sina tester med värden och förväntade utfall i ett separat dokument.

Vad att leta efterGe eleverna en kort kodsnutt med en if-sats och be dem skriva ner vad som kommer att skrivas ut till skärmen om variabeln 'poäng' är 15. Ställ sedan en följdfråga: Hur skulle du ändra koden för att även skriva ut 'Försök igen' om poängen är mindre än 10?

TillämpaAnalyseraUtvärderaSkapaRelationsförmågaBeslutsfattandeSjälvreglering
Skapa en komplett lektion

Aktivitet 02

Gemensam problemlösning45 min · Smågrupper

Stationer: Villkorsutmaningar

Sätt upp tre stationer med uppgifter: 1) If-sats för positiv/negativ, 2) If-else för årstid baserat på månad, 3) Nestad if för betygsskala. Grupper roterar och bygger på varandras kod.

Jämför en if-sats med en if-else-sats.

Vad att leta efterStäll frågan: 'När skulle du välja att använda enbart en if-sats istället för en if-else-sats i ett program?' Låt eleverna diskutera i par och sedan dela sina tankar med klassen, med fokus på scenarier där det bara finns ett möjligt utfall att agera på.

TillämpaAnalyseraUtvärderaSkapaRelationsförmågaBeslutsfattandeSjälvreglering
Skapa en komplett lektion

Aktivitet 03

Gemensam problemlösning25 min · Hela klassen

Helklass: Debugga beslut

Visa ett felaktigt program med villkor på projektor. Elever föreslår stegvis ändringar i helklass, kör simuleringar och röstar på bästa lösning. Avsluta med egna varianter.

Designa ett program som avgör om ett tal är jämnt eller udda.

Vad att leta efterVisa en enkel algoritm för att avgöra om ett tal är positivt eller negativt, skriven i pseudokod. Be eleverna identifiera villkoret som avgör utfallet och förklara kortfattat hur programmet skulle agera om talet var noll.

TillämpaAnalyseraUtvärderaSkapaRelationsförmågaBeslutsfattandeSjälvreglering
Skapa en komplett lektion

Aktivitet 04

Gemensam problemlösning20 min · Individuellt

Individuell: Valprogram

Elever skapar ett program som frågar om favoritfärg och ger svar med if-else. Testa mot kompisar och förbättra baserat på feedback.

Förklara hur villkorssatser styr programmets flöde.

Vad att leta efterGe eleverna en kort kodsnutt med en if-sats och be dem skriva ner vad som kommer att skrivas ut till skärmen om variabeln 'poäng' är 15. Ställ sedan en följdfråga: Hur skulle du ändra koden för att även skriva ut 'Försök igen' om poängen är mindre än 10?

TillämpaAnalyseraUtvärderaSkapaRelationsförmågaBeslutsfattandeSjälvreglering
Skapa en komplett lektion

Mallar

Mallar som passar dessa aktiviteter i Matematik

Använd, redigera, skriv ut eller dela.

Några anteckningar om att undervisa detta avsnitt

Lärande sker bäst när eleverna får testa villkor med egna ögon och diskutera sina iakttagelser. Undvik att bara förklara if-else teoretiskt, utan låt eleverna upptäcka skillnaden genom att köra kod med olika indata. Uppmuntra eleverna att ställa frågor som 'Vad händer om vi ändrar villkoret?' för att fördjupa förståelsen.

Eleverna kan förklara skillnaden mellan if och if-else genom konkreta exempel, identifiera när endast en gren exekveras och motivera valet av villkorssats i en given situation. De använder modulo och jämförelseoperatorer korrekt i praktiken.


Se upp för dessa missuppfattningar

  • During Parprogrammering: Jämnt eller udda, se upp för att eleverna tror att if-satsen alltid körs oavsett villkor.

    Ge dem specifika testfall att köra, t.ex. talet 5 och 4, och be dem förutspå och observera vilken gren som exekveras. Diskutera sedan gemensamt varför vissa tal hoppar över if-blocket.

  • During Stationer: Villkorsutmaningar, se upp för att eleverna tror att både if- och else-del körs i en if-else-sats.

    Låt eleverna spåra exekveringen med en penna och papper genom att markera vilken rad som körs för olika indata. Uppmuntra dem att jämföra resultaten och diskutera varför bara en gren kan exekveras åt gången.

  • During Helklass: Debugga beslut, se upp för att eleverna tror att villkor måste vara exakt lika för att fungera.

    Ge dem gränsfall att testa, som talet 0 eller negativa tal, och låt dem upptäcka att jämförelseoperatorer som >= eller != hanterar variationer korrekt. Diskutera sedan hur logiska operatorer utökar möjligheterna.


Metoder som används i denna översikt