Presentationer Bild 1/1

Teknik 2 · Kapitel 9

Programmering för problemlösning

Från ett tydligt problem till instruktioner som datorn kan utföra.

Lektionsmål

Efter kapitlet ska du kunna...

  • förklara hur programmering används för problemlösning
  • beskriva programmeringsprocessens fem steg
  • förklara variabler, villkor, loopar och funktioner
  • resonera om testning, automatisering och kodkvalitet

Startfråga

Vad behöver datorn veta?

Uppgift: räkna ut medelvärdet av tre tal.

  • Vilka tal ska användas?
  • Vilka beräkningar ska göras?
  • Vad ska visas för användaren?
  • Vad händer om inmatningen är fel?

Programmering kräver att problemet uttrycks exakt.

Begrepp

Vad är programmering?

Att skriva instruktioner som en dator kan följa.

Instruktionerna skrivs i programmeringsspråk som Python, JavaScript eller C#.

Datorn följer instruktionerna snabbt och noggrant – även när instruktionerna är fel.

Problemlösningsverktyg

Koden är inte målet

Programmering kan användas för att:

Bearbeta dataAutomatisera arbeteStyra systemSkapa interaktion

Målet är en fungerande lösning på ett verkligt problem.

Helhetsbild

Programmeringsprocessen

FörståPlaneraKodaTestaFörbättra

Nya testresultat kan skicka oss tillbaka till ett tidigare steg.

Steg 1

Förstå problemet

  • Vad ska programmet göra?
  • Vilken indata behövs?
  • Vilken utdata ska skapas?
  • Hur ska programmet användas?
  • Vilka fel behöver hanteras?

Indata · bearbetning · utdata

Beskriv lösningens flöde

5, 8, 11Summera och dividera med 3Medelvärde: 8

En tydlig modell gör det lättare att kontrollera om programmet löser rätt problem.

Steg 2

Planera lösningen

  1. Läs in talen.
  2. Räkna ut summan.
  3. Dela summan med antalet tal.
  4. Visa resultatet.

Pseudokod och flödesscheman hjälper oss att tänka igenom logiken innan syntaxen tar plats.

Pseudokod

Planen utan programspråk

LÄS IN tre tal
summa = tal 1 + tal 2 + tal 3
medelvärde = summa / 3
VISA medelvärde

Pseudokoden beskriver logiken men behöver inte följa ett programspråks exakta regler.

Steg 3

Skriv kod

tal = [5, 8, 11]
summa = sum(tal)
medelvarde = summa / len(tal)
print(medelvarde)

Resultat: 8.0

Koden är en möjlig implementation av planen – inte själva planen.

Fyra byggstenar

Så uttrycks lösningen

VariabelLagrar information.poang = 10
VillkorVäljer mellan alternativ.if poang > 5
LoopUpprepar en instruktion.for tal in lista
FunktionSamlar kod för en uppgift.berakna_summa()

Variabler

Ge information ett namn

namn = "Anna"
poang = 120
aktiv = True

Variabelnamnet ska hjälpa läsaren att förstå vad värdet betyder.

x = 120 fungerar för datorn, men poang = 120 är tydligare för människor.

Villkor

Låt programmet välja

if alder >= 18:
    print("Myndig")
else:
    print("Inte myndig")

Villkoret kontrolleras. Endast den gren som stämmer körs.

Loopar

Upprepa utan kopiering

for namn in ["Anna", "Erik", "Lisa"]:
    print(namn)

Samma instruktion körs en gång för varje namn.

Loopar är användbara när antalet värden kan förändras.

Funktioner

Samla en tydlig uppgift

def medelvarde(tal):
    return sum(tal) / len(tal)

resultat = medelvarde([5, 8, 11])

Funktionen kan återanvändas med andra listor och testas separat.

Interaktivt exempel

Beräkna medelvärde

Programmets steg
Tryck på Beräkna.

Steg 4

Testa programmet

TestfallVad kontrolleras?
5, 8, 11Vanliga giltiga värden
0, 0, 0Nollvärden
-5, 5Negativa tal
fem, 8Felaktig inmatning
tomtSaknad inmatning

Kontrollfråga

Vilket test saknas?

Ett program som räknar med tal har bara testats med 2, 4 och 6.